You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
148200: sql,provisioning: enable provisioning during LDAP authentication r=pritesh-lahoti,spilchen a=souravcrl
After successful authentication with LDAP, CRDB will now also provision the LDAP
user corresponding to the db user from the connection string. The user needs to
have valid credentials for binding to LDAP server and we will skip other
validations for pre-existence of the user and privilege to perform cluster sql
login.
informs #147602fixes#147599
Epic CRDB-21590
Release note (enterprise change): Added a new cluster setting
`server.provisioning.ldap.enabled` which can be set to true to conditionally
enable user provisioning during sql cluster authentication. The user
authenticates with the LDAP server and CRDB will only validate that bind to the
IDP was successful for provisioning the user. All roles created thus will be
privileged to perform sql authentication and will mandatorily have a role option
for PROVISIONING_SOURCE set to `ldap:<idp_url>`. Any group roles that are to be
assigned via ldap authorization must be pre created prior to the authentication
start.
Co-authored-by: souravcrl <[email protected]>
Copy file name to clipboardExpand all lines: docs/generated/eventlog.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3543,6 +3543,7 @@ authentication failure.
3543
3543
| 7 | CREDENTIALS_EXPIRED | occur when the credentials provided by the client are expired. |
3544
3544
| 8 | NO_REPLICATION_ROLEOPTION | occurs when the connection requires a replication role option, but the user does not have it. |
3545
3545
| 9 | AUTHORIZATION_ERROR | is used for errors during the authorization phase. For example, this would include issues with mapping LDAP groups to SQL roles and granting those roles to the user. |
3546
+
| 10 | PROVISIONING_ERROR | is used for errors during the user provisioning phase. This would include errors when the transaction to provision the authenticating user failed to execute. |
security.client_cert.subject_required.enabled boolean false mandates a requirement for subject role to be set for db user system-visible
111
111
security.ocsp.mode enumeration off use OCSP to check whether TLS certificates are revoked. If the OCSP server is unreachable, in strict mode all certificates will be rejected and in lax mode all certificates will be accepted. [off = 0, lax = 1, strict = 2] application
112
112
security.ocsp.timeout duration 3s timeout before considering the OCSP server unreachable application
113
+
security.provisioning.ldap.enabled boolean false enables automatic creation of SQL users upon successful LDAP login application
113
114
server.auth_log.sql_connections.enabled boolean false if set, log SQL client connect and disconnect events to the SESSIONS log channel (note: may hinder performance on loaded nodes) application
114
115
server.auth_log.sql_sessions.enabled boolean false if set, log verbose SQL session authentication events to the SESSIONS log channel (note: may hinder performance on loaded nodes). Session start and end events are always logged regardless of this setting; disable the SESSIONS log channel to suppress them. application
115
116
server.authentication_cache.enabled boolean true enables a cache used during authentication to avoid lookups to system tables when retrieving per-user authentication-related information application
Copy file name to clipboardExpand all lines: docs/generated/settings/settings.html
+1Lines changed: 1 addition & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -141,6 +141,7 @@
141
141
<tr><td><divid="setting-security-client-cert-subject-required-enabled" class="anchored"><code>security.client_cert.subject_required.enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>mandates a requirement for subject role to be set for db user</td><td>Dedicated/Self-hosted (read-write); Serverless (read-only)</td></tr>
142
142
<tr><td><divid="setting-security-ocsp-mode" class="anchored"><code>security.ocsp.mode</code></div></td><td>enumeration</td><td><code>off</code></td><td>use OCSP to check whether TLS certificates are revoked. If the OCSP server is unreachable, in strict mode all certificates will be rejected and in lax mode all certificates will be accepted. [off = 0, lax = 1, strict = 2]</td><td>Serverless/Dedicated/Self-Hosted</td></tr>
143
143
<tr><td><divid="setting-security-ocsp-timeout" class="anchored"><code>security.ocsp.timeout</code></div></td><td>duration</td><td><code>3s</code></td><td>timeout before considering the OCSP server unreachable</td><td>Serverless/Dedicated/Self-Hosted</td></tr>
144
+
<tr><td><divid="setting-security-provisioning-ldap-enabled" class="anchored"><code>security.provisioning.ldap.enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>enables automatic creation of SQL users upon successful LDAP login</td><td>Serverless/Dedicated/Self-Hosted</td></tr>
144
145
<tr><td><divid="setting-server-auth-log-sql-connections-enabled" class="anchored"><code>server.auth_log.sql_connections.enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, log SQL client connect and disconnect events to the SESSIONS log channel (note: may hinder performance on loaded nodes)</td><td>Serverless/Dedicated/Self-Hosted</td></tr>
145
146
<tr><td><divid="setting-server-auth-log-sql-sessions-enabled" class="anchored"><code>server.auth_log.sql_sessions.enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, log verbose SQL session authentication events to the SESSIONS log channel (note: may hinder performance on loaded nodes). Session start and end events are always logged regardless of this setting; disable the SESSIONS log channel to suppress them.</td><td>Serverless/Dedicated/Self-Hosted</td></tr>
146
147
<tr><td><divid="setting-server-authentication-cache-enabled" class="anchored"><code>server.authentication_cache.enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>enables a cache used during authentication to avoid lookups to system tables when retrieving per-user authentication-related information</td><td>Serverless/Dedicated/Self-Hosted</td></tr>
0 commit comments