Security Settings
Configure authentication, 2FA, SSO, session management, IP allowlist, and compliance.
Security Settings
Protect your organization with authentication, access controls, and compliance settings.
Who can change security settings?
Owner and Admin can configure most settings. Owner only for SSO, IP allowlist, and device trust. Go to Settings → Security.
Quick security checklist
- Enable 2FA required for Admins (minimum)
- Enable 2FA required for All (recommended)
- Set idle timeout to 8 hours or less
- Configure IP allowlist for admin access (if fixed IPs)
- Review audit log monthly
- Set up SSO for enterprise (Enterprise plan)
Authentication
Settings → Security → Authentication
Password policy
| Setting | Range | Default | Recommended |
|---|---|---|---|
| Minimum length | 8-32 | 12 | 12 |
| Require uppercase | On/Off | On | On |
| Require lowercase | On/Off | On | On |
| Require numbers | On/Off | On | On |
| Require symbols | On/Off | On | On |
| Password history | 1-20 | 5 | 5 |
| Max age (days) | 0 (never) - 365 | 0 | 90 |
| Lockout threshold | 3-10 | 5 | 5 |
| Lockout duration (min) | 5-60 | 15 | 15 |
:::tip A 12-character password with all complexity requirements takes centuries to brute-force. Max age of 90 days balances security and usability. :::
Two-factor authentication (2FA)
Settings → Security → Two-factor authentication
| Mode | Description | Best for |
|---|---|---|
| Optional | Users choose to enable | Small teams, low risk |
| Required for Admins | Admin+ roles must enable | Most organizations |
| Required for All | Every user must enable | High security, compliance |
Supported methods:
- Authenticator app (recommended) - Google Authenticator, Authy, 1Password, Microsoft Authenticator
- SMS - Backup method, less secure
- Email - Backup method, least secure
:::warning When changing from Optional to Required, users without 2FA will be prompted to set it up on next login. Give your team advance notice. :::
Single Sign-On (SSO) - Enterprise
Settings → Security → Single sign-on
Connect your identity provider for centralized authentication.
Supported providers
- Okta (SAML/OIDC)
- Azure AD / Entra ID (SAML/OIDC)
- Google Workspace (SAML/OIDC)
- Custom SAML 2.0 / OIDC
Setup steps
- Choose provider - Select from list or Custom
- Configure IdP - Add AfricaOS as SAML/OIDC application in your IdP
- Assertion Consumer Service (ACS) URL:
https://your-org.africaos.dev/auth/sso/callback - Entity ID / Audience:
https://your-org.africaos.dev - NameID Format: Email address
- Assertion Consumer Service (ACS) URL:
- Attribute mapping - Map IdP attributes to AfricaOS fields:
- Email (required)
- First name, Last name
- Role (optional, for auto-role assignment)
- Groups (optional, for workspace access)
- Test connection - Use "Test SSO" button with a test account
- Enable - Toggle on, choose enforcement:
- SSO optional - Users can use password or SSO
- SSO required - Password login disabled
Provisioning
- Just-in-Time (JIT) - Auto-create users on first SSO login
- SCIM 2.0 - Sync users/groups from IdP (Okta, Azure AD)
:::info SSO requires Enterprise plan. Contact sales@africaos.dev to upgrade. :::
Access control
IP allowlist
Settings → Security → IP allowlist
Restrict access to approved networks (CIDR notation).
| List | Applies to | Use case |
|---|---|---|
| Admin allowlist | Admin panel, settings, billing | Office IPs, VPN endpoints |
| User allowlist | User portal, modules | Office IPs, branch offices |
Format: CIDR notation (e.g., 192.168.1.0/24, 203.0.113.0/24)
- One CIDR per line
- Max 50 entries per list
- Owner emergency override - Owner can always access from any IP
:::warning Test your IP allowlist from a non-allowed IP before enabling. Owner always has emergency access. :::
Session management
Settings → Security → Sessions
| Setting | Range | Default | Recommended |
|---|---|---|---|
| Idle timeout | 15 min - 8 hours | 8 hours | 4 hours |
| Absolute timeout | 1-30 days | 7 days | 7 days |
| Max concurrent sessions | 1-10 | 5 | 3 |
| Remember me duration | 1-90 days | 30 days | 14 days |
Device management:
- View all active sessions per user
- Revoke individual sessions
- Force logout all sessions for a user
Device trust (Enterprise)
Settings → Security → Device trust
- Require managed devices - Only devices enrolled in your MDM
- Certificate-based auth - Client certificates for mutual TLS
- Device health checks - OS version, disk encryption, screen lock, biometrics
- Supported MDMs - Jamf, Intune, Kandji, Mosyle, custom via API
Compliance
Data protection standards
| Standard | Region | AfricaOS support |
|---|---|---|
| GDPR | EU | Data subject rights, DPA, SCCs, DPIA support |
| HIPAA | US Healthcare | BAA available, PHI handling, audit controls |
| POPIA | South Africa | Data subject rights, breach notification |
| NDPR | Nigeria | Data subject rights, breach notification |
Audit logging
All security events logged automatically:
| Event category | Examples | Retention |
|---|---|---|
| Authentication | Login, logout, failed attempts, 2FA, SSO | 1 year / 7 years (Enterprise) |
| Authorization | Role changes, permission updates, access grants | 1 year / 7 years |
| Data access | Exports, bulk views, API access | 1 year / 7 years |
| Configuration | Security settings, IP lists, SSO changes | 1 year / 7 years |
| Admin actions | User management, billing changes, module installs | 1 year / 7 years |
View audit log: Settings → Security → Audit log
- Filter by date, user, event type, IP
- Export as CSV/JSON
- Stream to SIEM (Enterprise)
Certifications
| Certification | Status | Scope |
|---|---|---|
| SOC 2 Type II | Annual audit | Security, availability, confidentiality |
| ISO 27001 | Certified | Information security management |
| PCI DSS Level 1 | Certified | Payments module card data handling |
Download compliance documents: Settings → Security → Compliance → Download reports
Incident response
If you suspect a security incident:
- Immediate - Owner: Settings → Security → Force logout all sessions for affected user
- Investigate - Check audit log for suspicious activity
- Contain - Suspend user, revoke sessions, update IP allowlist
- Report - Email security@africaos.dev with details
- Recover - Reset passwords, re-enable 2FA, review permissions