Security Association Markup Language (SAML) 2.0 プロトコルを使用する任意のサードパーティ ID プロバイダ ソリューションと VMware Integrated OpenStack を統合できます。

重要:

サードパーティ ID プロバイダは、VMware でサポートされていません。この手順で必要な情報を取得するには、ID プロバイダの管理者にお問い合わせください。

SAML 2.0 を使用して VMware Integrated OpenStackVMware Identity Manager を統合する場合は、VMware Identity Manager フェデレーションの設定を参照してください。

前提条件

  • ID プロバイダ ソリューションをデプロイし、このメタデータ ファイルの場所を判別します。

  • ID プロバイダ ソリューションの FQDN に VMware Integrated OpenStack コントローラ ノードがアクセスできることを確認します。

  • マッピング ファイルを JSON 形式で作成して、OpenStack 管理サーバ に保存します。詳細については、OpenStack ドキュメントのマッピングの組み合わせを参照してください。

  • SAML 属性マッピング ファイルを JSON 形式で作成して、OpenStack 管理サーバ に保存します。次の構造を使用します。

    [
        {
            "name": "attribute-1",
            "id": "id-1"
        },
        {
            "name": "attribute-2",
            "id": "id-2"
        },
        ...
    ]
注:

VMware Integrated OpenStack デプロイには、フェデレーション ID プロバイダを 1 つのみ含めることができます。viocli federation identity-provider list を実行すると、設定されたすべての ID プロバイダを表示できます。viocli federation identity-provider remove を実行すると、ID を使用して ID プロバイダを削除できます。

手順

  1. OpenStack 管理サーバviouser としてログインします。
  2. VMware Integrated OpenStack に、ID プロバイダ ソリューションを追加します。
    sudo viocli federation identity-provider add --type saml2
  3. プロンプトに応じて、次の情報を入力します。

    オプション

    説明

    Identity provider name(ID プロバイダの名前)

    ID プロバイダの名前を入力します。この名前は、OpenStack 管理サーバ コマンドライン操作で使用され、特殊文字またはスペースを含めることはできません。

    ID プロバイダの表示名(Horizon 用)

    ID プロバイダの表示名前を入力します。この名前は、VMware Integrated OpenStack ダッシュボードにログインするときに 認証方法 の下に表示されます。

    説明

    (オプション)ID プロバイダの説明を入力します。

    IdP メタデータに URL またはローカル ファイルを使用

    url と入力します。ローカル ファイルから ID プロバイダのメタデータを取得することはできません。

    IdP メタデータの URL

    ID プロバイダ上のメタデータ ファイルの URL を入力します(https://idp-fqdn/metadata.xml など)。ID プロバイダを FQDN で指定する必要があります。

    TLS/SSL 接続を確立する際に証明書を確認しない

    TLS 証明書を検証するには False を、証明書の検証を無効にするには True を入力します。

    マッピング ルールに固定ファイルまたはテンプレート ファイルを使用

    固定マッピング ファイルを使用するには static を、マッピング テンプレートを使用するには template を入力します。

    マッピング ルール ファイルのローカル パスの入力

    ローカル システム上のマッピング ルール ファイルのパスを入力します。

    フェデレーション ユーザーに関連付けられるドメイン名の入力

    フェデレーション ユーザーが属する Keystone ドメインを入力します。このドメインがない場合は、作成されます。

    フェデレーション ユーザーに関連付けられるグループの名前の入力(カンマ「,」区切り)

    フェデレーション ユーザーに作成する 1 つ以上のグループを入力します。マッピング ファイルに含まれているすべてのグループを入力する必要があります。入力したグループがない場合は、作成されます。

    属性マッピングに固定ファイルまたはテンプレート ファイルを使用

    固定マッピング ファイルを使用するには static を、マッピング テンプレートを使用するには template を入力します。

    属性マッピング ファイルのローカル パスの入力

    ローカル システム上の属性マッピング ファイルのパスを入力します。

  4. 更新された ID の設定をデプロイします。
    sudo viocli identity configure

    ID 設定をデプロイすると、OpenStack サービスが一時的に中断されます。

タスクの結果

VMware Integrated OpenStack は ID プロバイダ ソリューションと統合され、フェデレーション ユーザーおよびグループは OpenStack にインポートされます。VMware Integrated OpenStack ダッシュボードにアクセスすると、指定した ID プロバイダを選択して、フェデレーション ユーザーとしてログインすることができます。

例︰VMware Integrated OpenStack と Active Directory フェデレーション サービスの統合

次の手順では、VMware Integrated OpenStack と Active Directory フェデレーション サービス (AD FS) の間に ID フェデレーションを実装します。この例では、VMware Integrated OpenStack デプロイのパブリック仮想 IP アドレスは 192.0.2.160 であり、adfs.example.com にある Windows Server 仮想マシンに Active Directory フェデレーション サービス ロールが追加されています。

  1. Active Directory フェデレーション サービスで、VMware Integrated OpenStack に証明書利用者信頼を追加します。

    1. Active Directory フェデレーション サービスの管理[アクション] > [証明書利用者信頼の追加...] の順に選択します。

    2. [開始] をクリックします。

    3. [証明書利用者についてのデータを手動で入力する] を選択して、[次へ] をクリックします。

    4. 表示名に OpenStack と入力し、[次へ] をクリックします。

    5. [Active Directory フェデレーション サービス プロファイル] を選択して、[次へ] をクリックします。

    6. [次へ] をクリックします。

    7. [SAML 2.0 WebSSO プロトコルのサポートを有効にする] を選択します。

    8. 証明書利用者の URL として https://192.0.2.160:5000/saml と入力して、[次へ] をクリックします。

    9. 証明書利用者信頼 ID として https://192.0.2.160:5000/saml と入力し、[追加] をクリックして、[次へ] をクリックします。

    10. [現時点ではこの証明書利用者信頼に多要素認証を構成しない] を選択して、[次へ] をクリックします。

    11. [すべてのユーザーに対してこの証明書利用者へのアクセスを許可する] を選択して、[次へ] をクリックします。

    12. [次へ] をクリックし、[要求規則の編集] を選択して、[閉じる] をクリックします。

    13. [ルールを追加...] をクリックします。

    14. [入力方向の要求をパス スルーまたはフィルタリング] を選択して、[次へ] をクリックします。

    15. ルール名として [UPN パススルー] と入力し、入力方向の要求のタイプに [UPN] を選択します。

    16. [すべての要求値をパス スルーする] を選択して、[終了] をクリックします。

  2. OpenStack 管理サーバviouser としてログインします。

  3. mapping.json という名前のファイルに次の情報を書き込みます。

    [
        {
            "local": [
                {
                    "user": {
                        "name": "{0}",
                    },
                    "group": {
                        "domain": {
                            "name": "adfs-users"
                        },
                        "name": "Federated Users"
                    }
                }
            ],
            "remote": [
                {
                    "type": "upn"
                }
            ]
        }
    ]
  4. attribute.json という名前のファイルに次の情報を書き込みます。

    [
        {
            "name": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn",
            "id": "upn"
        }
    ]
  5. Active Directory フェデレーション サービスを ID プロバイダとして追加します。

    sudo viocli federation identity-provider add --type saml2
  6. プロンプトに応じて、情報を入力します。

    Identity provider name []: adfs
    Identity provider display name (for Horizon) []: Active Directory Federation Services
    Description []: ADFS deployment
    Do you wish to use URL or local file for IdP metadata? (url, file) [url]: url
    IdP metadata URL []: https://adfs.example.com/federationmetadata/2007-06/federationmetadata.xml
    Do not verify certificates when establishing TLS/SSL connections [False]: false
    Do you wish to use a static file or template file for mapping rules? (static, template) [static]: static
    Enter the local path of mapping rules file: mapping.json
    Enter the name of the domain that federated users associate with [Default]: adfs-users
    Enter the name to the groups that federated users associate with (separated by commas ",") []: Federated Users
    Do you wish to use a static file or template file for attribute mapping? (static, template) [static]: static
    Enter the local path of attribute mapping file: attribute.json
  7. 更新された ID の設定をデプロイします。

    sudo viocli identity configure

設定をデプロイした後で、VMware Integrated OpenStack ダッシュ ボードを開きます。これで、Active Directory フェデレーション サービス ID プロバイダを選択し、フェデレーション ユーザーとしてログインできるようになりました。