MongoDB Ops ManagerSAML 認証 のMongoDB Ops Managerユーザーの設定
セキュリティ アサーション マークアップ言語( SAML )サービスを実行する ID プロバイダー( IdP )を使用して、 のユーザー認証と認可を管理できます。MongoDB Ops Manager認証されたセッションなしでMongoDB Ops Managerに移動しようとすると、 MongoDB Ops ManagerはログインするIdPにユーザーを送信します。 認証が完了すると、MongoDB Ops Manager アプリケーションに戻ります。
このチュートリアルでは、次の方法について説明します。
MongoDB Ops Manager のSAML認証を構成する
SAMLグループをMongoDB Ops Manager 組織ロールとプロジェクト ロールにマッピングします。
Considerations
SAML アクティブ化後もユーザーは認証され続けます
SAML認証を使用するように MongoDB Ops Manager インスタンスを変更すると、すべてのユーザーは現在のセッションにログインしたままになります。 認証の変更後、MongoDB Ops Manager にログインしようとするユーザーは、 SAML IdPにリダイレクトされます。
2 段階構成
SAMLインスタンスを設定すると循環ロジックが適用されます。 ワーキング統合を作成するには、次の手順に従います。
IdPにはサービスプロバイダーからの値が必要で、
サービス プロバイダーにはIdPからの値が必要です。
この統合を開始するには、前提条件に従って、次にこのチュートリアルの 手順 に従います。
前提条件
SAML統合を構成するには、 SAML IdPに対して次のアクションを実行する必要があります。
SAML IdPをインストールします。
MongoDB Ops Managerインスタンスがネットワーク経由でIdPにアクセスできることを確認します。
SAML IdPでは、次の操作を行う必要があります。
MongoDB Ops Manager グローバル オーナーにマッピングするSAMLユーザーを作成します。
{2 にマッピングできる SAML グループを作成します。MongoDB Ops ManagerGlobal Owner
Global Owner SAMLグループをSAMLユーザーに割り当てます。
MongoDB Ops Managerを表すMongoDB Ops Manager Manager の新しいアプリケーションを作成します。
この新しいアプリケーションに初期 MongoDB Ops Manager SAML値を設定します。
次のフィールドにプレースホルダー値を設定します。
SP Entity ID or Issuer
Audience URI
Assertion Consumer Service (ACS) URL
IdP内の次のフィールドに実際の値を設定します。
フィールド共通値Signature AlgorithmIdPには、次の値が 1 つ以上ある場合があります。
rsa-sha1
dsa-sha1
rsa-sha256
rsa-sha384
rsa-sha512
Name IDEmail Address
Name ID Formaturn:oasis:names:tc:SAML:1.1:nameid-format:unspecified
次の属性値の 属性名 を使用して属性を作成します。
アドレス
名
姓
ユーザー グループ
署名された SAML 応答とアサーションを要求するようにIdPを構成します。
これらの値を保存します。
手順
SAML認証を構成するには次のようにします。
MongoDB Ops Managerで必要な SAML IdP 設定値を設定します。MongoDB Ops Manager
次の SAML フィールドに IdP からの値を入力します。
フィールド | 必要性 | アクション | default |
---|---|---|---|
ID プロバイダー URI | 必須 | シングル サインオンを調整するために使用する IdP の URI を入力します。 このURIは、 SAML IdPのIdP Entity ID or Issuerです。 このURIは、SAML 応答の | なし |
SSO エンドポイント URL | 必須 | IdP の シングル サインオン URL を入力します。 このURLは、 IdPのSAML Login URLです。 | なし |
SLO Endpoint URL | 任意 | URLMongoDB Ops Managerユーザーが MongoDB MongoDB Ops ManagerOps ManagerMongoDB Ops Manager からログアウトするときに、 が IdP からログアウトするようにするには、呼び出す SAML IdP を入力します。 これはIdPのSAML Logout URLです。 | なし |
ID プロバイダーx509証明書 | 必須 | このフィールドにIdPの X.509 証明書を貼り付けます。 IdPはPEM形式で証明書を提供します。 これはIdPのX.509 Certificateです。 これは、SAML 応答およびアサーションに署名するために使用するのと同じX.509 Certificateである必要があります。 | なし |
IdP 署名アルゴリズム | 必須 | IdPとの間で送受信される署名を暗号化するために使用されるアルゴリズムを選択します。 指定できる値は以下のとおりです。
これはIdPのSignature Algorithmです。 | なし |
暗号化されたアサーションが必要 | 任意 | IdPがMongoDB Ops Managerに送信するアサーションを暗号化するかどうかを選択します。 | false |
グローバル ロール オーナー グループ | 必須 | SAMLグループ メンバー属性に、すべてのグループへのフル アクセスとすべての管理権限を含む、この配置に対する完全な権限を持つグループの名前を入力します。 このグループを 前提条件 の一部としてIdP設定に追加しました。 この値は、 SAML応答で送信されたグループ ノードの属性値と一致する必要があります。 Azure ADをIdPとして使用する場合は、グループ名の代わりにグループのオブジェクト ID をこのフィールドに入力します。 | なし |
ユーザー名のSAML属性 | 必須 | ユーザーの名を含むSAML属性の名前を入力します | なし |
ユーザーの姓のSAML属性 | 必須 | ユーザーの姓を含むSAML属性の名前を入力する | なし |
ユーザー メールのSAML属性 | 必須 | ユーザーのメールアドレスを含むSAML属性の名前を入力します。 | なし |
SAMLグループ ノードの属性 | 必須 | MongoDB Ops Manager がロールをプロジェクトおよび組織にマッピングするために使用するグループのリストを含むSAML属性の名前を入力します。 | groups |
必要なオプションの SAML IdP 設定をMongoDB OpsMongoDB Ops Manager Managerに追加します。
次の SAML フィールドに IdP からの値を入力します。
フィールド | 必要性 | アクション | default |
---|---|---|---|
SP 証明書 PEM キー ファイルへのパス | 任意 | サービス プロバイダーがリクエストに署名するために使用するPEM形式の証明書への絶対ファイル パスを入力します。 この証明書には、秘密キーと公開キーが含まれます。 このフィールドを空白のままにすると、次のようになります。
| なし |
SP 証明書 PEM キー ファイルのパスワード | 条件付き | SP PEMファイル内の秘密キーを暗号化した場合は、このフィールドにそのパスワードを入力します。 | なし |
グローバル オートメーション管理者ロール | 任意 |
この値は、 SAML応答で送信されたグループ ノードの属性値と一致する必要があります。 Azure ADをIdPとして使用する場合は、グループ名の代わりにグループのオブジェクト ID をこのフィールドに入力します。 | なし |
グローバルバックアップ管理者ロール | 任意 |
この値は、 SAML応答で送信されたグループ ノードの属性値と一致する必要があります。 Azure ADをIdPとして使用する場合は、グループ名の代わりにグループのオブジェクト ID をこのフィールドに入力します。 | なし |
グローバル モニタリング管理者ロール | 任意 |
この値は、 SAML応答で送信されたグループ ノードの属性値と一致する必要があります。 Azure ADをIdPとして使用する場合は、グループ名の代わりにグループのオブジェクト ID をこのフィールドに入力します。 | なし |
グローバル ユーザー管理者ロール | 任意 |
この値は、 SAML応答で送信されたグループ ノードの属性値と一致する必要があります。 Azure ADをIdPとして使用する場合は、グループ名の代わりにグループのオブジェクト ID をこのフィールドに入力します。 | なし |
グローバル読み取り専用ロール | 任意 |
この値は、 SAML応答で送信されたグループ ノードの属性値と一致する必要があります。 Azure ADをIdPとして使用する場合は、グループ名の代わりにグループのオブジェクト ID をこのフィールドに入力します。 | なし |
SAML グループをプロジェクト ロールに関連付けます。
新しいプロジェクトで、SAML グループをロールに関連付けるには、次の手順に従います。
注意
新しいプロジェクトを作成するには、任意のグローバル ロールが必要です。
[ Admin > [ General > [ Projects ] をクリックします。
[Create a New Project] をクリックします。
Project Name に、新しいMongoDB Ops Managerプロジェクトの名前を入力します。
各プロジェクト ロールに対応する SAML グループを入力します。
重要
各グループに対して、完全修飾識別名を使用する必要があります。 複数の LDAP または SAML グループが同じロールに対応する場合は、2 つのセミコロンで区切ります(
;;
)。 ロールの フィールドからグループを削除して、そのロールに対するグループのアクセスを取り消します。[Add Project] をクリックします。
既存のプロジェクトで、SAML グループとロールの関連付けを更新するには次のようにします。
[ Admin > [ General > [ Projects ] をクリックします。
プロジェクトのActions列で、次をクリックします[] をクリックし、[ Edit SAML Settings ] をクリックします。
各プロジェクト ロールに対応する SAML グループを入力します。
重要
各グループに対して、完全修飾識別名を使用する必要があります。 複数の LDAP または SAML グループが同じロールに対応する場合は、2 つのセミコロンで区切ります(
;;
)。 ロールの フィールドからグループを削除して、そのロールに対するグループのアクセスを取り消します。[Save Changes] をクリックします。
任意: LDAP グループを組織ロールに関連付けます。
SAML グループを新しい組織のロールに関連付けるには、次の手順に従います。
注意
新しい組織を作成するには、任意のグローバル ロールが必要です。
[ Admin > [ General > [ Organizations ] をクリックします。
[Create a New Organization] をクリックします。
Organization Name に新しいMongoDB Ops Manager組織の名前を入力します。
重要
各グループに対して、完全修飾識別名を使用する必要があります。 複数の LDAP または SAML グループが同じロールに対応する場合は、2 つのセミコロンで区切ります(
;;
)。 ロールの フィールドからグループを削除して、そのロールに対するグループのアクセスを取り消します。[Add Organization] をクリックします。
既存の組織の、ロールと SAML グループの関連付けを更新するには:
[ Admin > [ General > [ Organizations ] をクリックします。
Edit Orgボタンをクリックします。
重要
各グループに対して、完全修飾識別名を使用する必要があります。 複数の LDAP または SAML グループが同じロールに対応する場合は、2 つのセミコロンで区切ります(
;;
)。 ロールの フィールドからグループを削除して、そのロールに対するグループのアクセスを取り消します。[Save Changes] をクリックします。
MongoDB Ops Managerメタデータをエクスポートします。
SAML構成を保存すると、 Download the Metadata XML Fileへのリンクが表示されます。
このリンクをクリックして、 SAML SP メタデータ XML ファイルをダウンロードします。
このメタデータ ファイルは次の例のようになります。
1 <?xml version="1.0"?> 2 <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" validUntil="2019-09-13T20:36:00Z" cacheDuration="PT604800S" entityID="http://ec2-3-88-178-252.compute-1.amazonaws.com:8080" ID="ONELOGIN_f95ad815-e8da-4ab3-a799-3c581484cd6a"> 3 <md:SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> 4 <md:SingleLogoutService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="http://ec2-3-88-178-252.compute-1.amazonaws.com:8080/saml/logout"/> 5 <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat> 6 <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="http://ec2-3-88-178-252.compute-1.amazonaws.com:8080/saml/assert" index="1"/> 7 </md:SPSSODescriptor> 8 </md:EntityDescriptor>
SAML SP メタデータを IdP にインポートします。
IdPで オプションが提供される場合は、メタデータをIdPにインポートします。 MongoDB Ops Managerは、 IdPのサービスプロバイダー(SP)として機能します。
IdP へのメタデータ XML ファイルで次の値を指定します。
フィールド | 共通値 |
---|---|
SP Entity ID or Issuer | <OpsManagerHost>:<Port> |
Audience URI | <OpsManagerHost>:<Port> |
Assertion Consumer Service (ACS) URL | <OpsManagerHost>:<Port>/saml/assert |
Single Logout URL | <OpsManagerHost>:<Port>/saml/logout |
これらの値の 1 つ以上が欠落している場合は、前の表に記載されているガイドラインを使用してそれらの値を設定します。
これらの値をIdPに保存します。