LDAP authentication#
KubernetesのEDB Postgres Distributedは、LDAP認証をサポートしています。 EDB Postgres Distributed for KubernetesのLDAP構成は、EDB Postgres for Kubernetes PG4Kからの実装に依存しています。 PG4K documentation を参照してください
完全なコンテキストについては。
重要
続行する前に、 LDAP authentication feature in the Postgres documentation について理解してください。
LDAPサポートでは、ユーザー認証のみがLDAPに送信されるため、ユーザーはpostgresデータベースに既に存在する必要があります。
この例は、 PGDGroupでsimple bind
モードを使用したLDAP構成を示しています。
Postgresサーバーは、prefix + username + suffix
とパスワードを使用してLDAPサーバーをバインドし、認証を実現します。
spec:
[...]
cnp:
postgresql:
ldap:
server: ldap-service.ldap.svc.cluster.local
bindAsAuth:
prefix: "uid="
suffix: ",dc=example,dc=org"
この例は、 PGDGroupでsearch+bind
モードを使用してLDAPの構成を示しています。このモードでは、
Postgresインスタンスは、最初にbindDN
を使用してLDAPにバインドされ、パスワードはシークレットbindPassword
に保存されます。次に、 PostgresはbaseDN
の下で検索を実行して、searchAttribute
で指定された項目と一致するユーザー名を見つけようとします。一致するものが見つかった場合、Postgresは最終的にLDAPサーバーに対してエントリとパスワードを検証します。
spec:
[...]
cnp:
postgresql:
ldap:
server: ldap-service.ldap.svc.cluster.local
bindSearchAuth:
baseDN: "dc=example,dc=org"
bindDN: "cn=admin,dc=example,dc=org"
searchAttribute: "uid"
bindPassword:
name: ldap-bind-password
key: password