authentik/website/integrations/sources/active-directory/index.md

72 lines
2.9 KiB
Markdown
Raw Normal View History

---
title: Active Directory
---
2020-10-18 22:03:46 +01:00
## Preparation
The following placeholders will be used:
2021-03-02 21:10:54 +00:00
- `ad.company` is the Name of the Active Directory domain.
- `authentik.company` is the FQDN of the authentik install.
2020-10-18 22:03:46 +01:00
## Active Directory setup
2020-10-18 22:03:46 +01:00
1. Open Active Directory Users and Computers
2. Create a user in Active Directory, matching your naming scheme
![](./01_user_create.png)
3. Give the User a password, generated using for example `pwgen 64 1` or `openssl rand -base64 36`.
2020-10-18 22:03:46 +01:00
4. Open the Delegation of Control Wizard by right-clicking the domain and selecting "All Tasks".
2020-10-18 22:03:46 +01:00
2020-12-05 21:08:42 +00:00
5. Select the authentik service user you've just created.
2020-10-18 22:03:46 +01:00
6. Ensure the "Reset user password and force password change at next logon" Option is checked.
![](./02_delegate.png)
7. Grant these additional permissions (only required when *Sync users' password* is enabled, and dependent on your AD Domain)
![](./03_additional_perms.png)
2020-10-18 22:03:46 +01:00
Additional info: https://support.microfocus.com/kb/doc.php?id=7023371
## authentik Setup
In authentik, create a new LDAP Source in Directory -> Federation & Social login.
2020-10-18 22:03:46 +01:00
Use these settings:
2021-03-02 21:10:54 +00:00
- Server URI: `ldap://ad.company`
2020-10-18 22:03:46 +01:00
For authentik to be able to write passwords back to Active Directory, make sure to use `ldaps://`. You can test to verify LDAPS is working using `ldp.exe`.
2020-10-18 22:03:46 +01:00
You can specify multiple servers by separating URIs with a comma, like `ldap://dc1.ad.company,ldap://dc2.ad.company`.
When using a DNS entry with multiple Records, authentik will select a random entry when first connecting.
2021-03-02 21:10:54 +00:00
- Bind CN: `<name of your service user>@ad.company`
- Bind Password: The password you've given the user above
- Base DN: The base DN which you want authentik to sync
- Property mappings: Control/Command-select all Mappings which start with "authentik default LDAP" and "authentik default Active Directory"
- Group property mappings: Select "authentik default LDAP Mapping: Name"
2020-10-18 22:03:46 +01:00
Additional settings that might need to be adjusted based on the setup of your domain:
2020-10-18 22:03:46 +01:00
- Group: If enabled, all synchronized groups will be given this group as a parent.
- Addition User/Group DN: Additional DN which is _prepended_ to your Base DN configured above to limit the scope of synchronization for Users and Groups
- User object filter: Which objects should be considered users. For Active Directory set it to `(&(objectClass=user)(!(objectClass=computer)))` to exclude Computer accounts.
2021-03-02 21:10:54 +00:00
- Group object filter: Which objects should be considered groups.
- Group membership field: Which user field saves the group membership
- Object uniqueness field: A user field which contains a unique Identifier
2020-10-18 22:03:46 +01:00
After you save the source, a synchronization will start in the background. When its done, you can see the summary under Dashboards -> System Tasks.
2020-10-18 22:03:46 +01:00
![](./10_ak_status.png)
To finalise the Active Directory setup, you need to enable the backend "authentik LDAP" in the Password Stage.
![](./11_ak_stage.png)