このトピックでは、Microsoft Active Directory のマネージド サービスと統合するために MongoDB を構成する方法を説明します。次の手順は、MongoDB Enterprise バージョン 4.0 および 4.2 で確認されています。
始める前に
MongoDB を構成する前に、マネージド Microsoft AD ドメインを作成します。
MongoDB のデプロイ
まず、MongoDB を Google Cloud にデプロイします。Active Directory との互換性を維持するため、の LDAP 認証をサポートする MongoDB のバージョン(MongoDB Enterprise Edition など)を必ずインストールしてください。MongoDB は Compute Engine インスタンスにインストールするか、Google Kubernetes Engine にデプロイできます。
Compute Engine インスタンス
MongoDB をスタンドアロン パッケージとして Compute Engine インスタンスにインストールするには、MongoDB Enterprise インストールの手順に従ってください。
Google Kubernetes Engine コンテナ
MongoDB を Google Kubernetes Engine コンテナにデプロイするには、次の手順を行います。
- StatefulSet Codelab を使用して Kubernetes で MongoDB データベースを実行するの内容を実行します。
./mongo-k8s-sidecar/example/StatefulSet/
ディレクトリに移動します。mongo-statefulset.yaml
を開くimage: mongo
をimage: path to gcr
に置き換えます。
認証の構成
次に、認証を構成します。Managed Microsoft AD は、認証用の LDAP バックエンドとして使用できます。LDAP または Kerberos を選択できます。
認証を構成するには、設定値を使用して、次のセットアップ手順のいずれかを完了します。
- LDAP を使用して認証を設定するには、MongoDB LDAP チュートリアルを完了します。
- Kerberos を使用して認証を設定するには、MongoDB Kerberos チュートリアルを実行します。
認証設定値
認証を構成するには、次の値を使用します。
security.ldap.server
: 設定時にドメインに指定した FQDN を使用します。security.ldap.userToDNMapping
:ldapQuery
で提供されたドメインのドメイン名を使用します。- 例:
ldapQuery: "DC=cloudad,DC=gke,DC=com??sub?(userPrincipalName={0})"
- 例:
security.ldap.server.authz
:queryTemplate
で提供されたドメインのドメイン名を使用します。- 例:
queryTemplate: "DC=cloudad,DC=gke,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
- 例:
security.ldap.transportSecurity
: TLS/SSL を無効にするには、none
に設定します。
マネージド Microsoft AD では、ユーザーは Cloud OU
の下に作成されます。Cloud OU
の下に作成されたリソースとグループの識別名を使用する必要があります。たとえば、ユーザー dba
の場合、識別名 "CN=dba,OU=Cloud,DC=cloudad,DC=gke,DC=com"
を使用します。