@@ -12,6 +12,7 @@ GitLab integrates with LDAP to support user authentication.
...
@@ -12,6 +12,7 @@ GitLab integrates with LDAP to support user authentication.
This integration works with most LDAP-compliant directory servers, including:
This integration works with most LDAP-compliant directory servers, including:
- Microsoft Active Directory
- Microsoft Active Directory
-[Microsoft Active Directory Trusts](https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc771568(v=ws.10)) are not supported.
- Apple Open Directory
- Apple Open Directory
- Open LDAP
- Open LDAP
- 389 Server
- 389 Server
...
@@ -21,9 +22,6 @@ Users added through LDAP take a [licensed seat](../../../subscriptions/self_mana
...
@@ -21,9 +22,6 @@ Users added through LDAP take a [licensed seat](../../../subscriptions/self_mana
GitLab Enterprise Editions (EE) include enhanced integration,
GitLab Enterprise Editions (EE) include enhanced integration,
including group membership syncing as well as multiple LDAP servers support.
including group membership syncing as well as multiple LDAP servers support.
NOTE: **Note:**
[Microsoft Active Directory Trusts](https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/cc771568(v=ws.10)) are not supported.
If you configure multiple LDAP servers, use a unique naming convention for the `label` section of each entry. That label is used as the display name of the tab shown on the sign-in page.
Any number of LDAP servers can be configured. However, make sure to use a unique naming convention for the `label` section of each entry as this will be the display name of the tab shown on the sign-in page.
## User sync **(STARTER ONLY)**
## User sync **(STARTER ONLY)**
...
@@ -445,11 +440,10 @@ The process executes the following access checks:
...
@@ -445,11 +440,10 @@ The process executes the following access checks:
blocked/disabled state). This will only be checked if
blocked/disabled state). This will only be checked if
`active_directory: true` is set in the LDAP configuration.
`active_directory: true` is set in the LDAP configuration.
NOTE: **Note:**
In Active Directory, a user is marked as disabled/blocked if the user
In Active Directory, a user is marked as disabled/blocked if the user
account control attribute (`userAccountControl:1.2.840.113556.1.4.803`)
account control attribute (`userAccountControl:1.2.840.113556.1.4.803`)
has bit 2 set. See <https://ctovswild.com/2009/09/03/bitmask-searches-in-ldap/>
has bit 2 set.
for more information.
For more information, see <https://ctovswild.com/2009/09/03/bitmask-searches-in-ldap/>
The user will be set to `ldap_blocked` state in GitLab if the above conditions
The user will be set to `ldap_blocked` state in GitLab if the above conditions
fail. This means the user will not be able to sign-in or push/pull code.
fail. This means the user will not be able to sign-in or push/pull code.
...
@@ -460,8 +454,10 @@ The process will also update the following user information:
...
@@ -460,8 +454,10 @@ The process will also update the following user information:
- If `sync_ssh_keys` is set, SSH public keys.
- If `sync_ssh_keys` is set, SSH public keys.
- If Kerberos is enabled, Kerberos identity.
- If Kerberos is enabled, Kerberos identity.
NOTE: **Note:**
The LDAP sync process:
The LDAP sync process updates existing users while new users are created on first sign in.
- Updates existing users.
- Creates new users on first sign in.
### Adjusting LDAP user sync schedule **(STARTER ONLY)**
### Adjusting LDAP user sync schedule **(STARTER ONLY)**
...
@@ -469,11 +465,13 @@ NOTE: **Note:**
...
@@ -469,11 +465,13 @@ NOTE: **Note:**
These are cron formatted values. You can use a crontab generator to create
These are cron formatted values. You can use a crontab generator to create
these values, for example <http://www.crontabgenerator.com/>.
these values, for example <http://www.crontabgenerator.com/>.
By default, GitLab will run a worker once per day at 01:30 a.m. server time to
By default, GitLab runs a worker once per day at 01:30 a.m. server time to
check and update GitLab users against LDAP.
check and update GitLab users against LDAP.
You can manually configure LDAP user sync times by setting the
You can manually configure LDAP user sync times by setting the
following configuration values. The example below shows how to set LDAP user
following configuration values, in cron format. If needed, you can
use a [crontab generator](http://crontabgenerator.com).
The example below shows how to set LDAP user
sync to run once every 12 hours at the top of the hour.
sync to run once every 12 hours at the top of the hour.
**Omnibus installations**
**Omnibus installations**
...
@@ -617,14 +615,12 @@ To enable it you need to:
...
@@ -617,14 +615,12 @@ To enable it you need to:
### Adjusting LDAP group sync schedule **(STARTER ONLY)**
### Adjusting LDAP group sync schedule **(STARTER ONLY)**
NOTE: **Note:**
These are cron formatted values. You can use a crontab generator to create
these values, for example [Crontab Generator](http://www.crontabgenerator.com/).
By default, GitLab runs a group sync process every hour, on the hour.
By default, GitLab runs a group sync process every hour, on the hour.
The values shown are in cron format. If needed, you can use a