您可以將 VMware Integrated OpenStack 與使用安全性關聯標記語言 (SAML) 2.0 通訊協定的任何第三方身分識別提供者解決方案進行整合。

重要:

VMware 不支援第三方身分識別提供者。請連絡您的身分識別提供者管理員,以取得此程序中所需的資訊。

如果您想要透過使用 SAML 2.0 將 VMware Integrated OpenStackVMware Identity Manager 整合,請參閱設定 VMware Identity Manager 聯盟

先決條件

  • 部署您的身分識別提供者解決方案,並確定其中繼資料檔案的位置。

  • 確保 VMware Integrated OpenStack 控制器節點可以存取身分識別提供者解決方案的 FQDN。

  • 建立 JSON 格式的對應檔案,並將其儲存在 OpenStack 管理伺服器 中。如需詳細資訊,請參閱 OpenStack 說明文件中的對應組合

  • 建立 JSON 格式的 SAML 屬性對應檔案,並將其儲存在 OpenStack 管理伺服器 中。使用下列結構:

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

VMware Integrated OpenStack 部署只能包含一個同盟身分識別提供者。您可以執行 viocli federation identity-provider list 以顯示所有設定的身分識別提供者,並執行 viocli federation identity-provider remove 以按識別碼將其移除。

程序

  1. viouser 身分登入 OpenStack 管理伺服器
  2. 將您的身分識別提供者解決方案新增到 VMware Integrated OpenStack
    sudo viocli federation identity-provider add --type saml2
  3. 出現提示時,輸入下列資訊。

    選項

    說明

    身分識別提供者名稱

    輸入身分識別提供者的名稱。此名稱用於 OpenStack 管理伺服器 命令列作業,不能包含特殊字元或空格。

    身分識別提供者顯示名稱 (適用於 Horizon)

    輸入身分識別提供者的顯示名稱。使用者登入 VMware Integrated OpenStack 儀表板時,可在執行驗證時使用下看到此名稱。

    說明

    (選擇性) 輸入身分識別提供者的說明。

    要使用 URL 還是本機檔案來取得 IdP 中繼資料?

    輸入 url。不支援從本機檔案取得身分識別提供者中繼資料。

    IdP 中繼資料 URL

    輸入您身分識別提供者中的中繼資料檔案的 URL (例如,https://idp-fqdn/metadata.xml)。您必須透過 FQDN 指定身分識別提供者。

    建立 TLS/SSL 連線時不會驗證憑證

    輸入 false 驗證 TLS 憑證,或輸入 true 停用憑證驗證。

    您要將靜態檔案還是範本檔案用於對應規則

    輸入 static 使用靜態對應檔案,或輸入 template 使用對應範本。

    輸入對應規則檔案的本機路徑

    輸入本機系統上的對應規則檔案的路徑。

    輸入同盟使用者相關聯的網域的名稱

    輸入同盟使用者所屬的 Keystone 網域。如果此網域不存在,則會建立一個。

    輸入同盟使用者相關聯的群組名稱 (以逗號「,」分隔)

    輸入要為同盟使用者建立的一或多個群組。您必須輸入對應檔案中包含的所有群組。如果您輸入的群組不存在,則會建立這些群組。

    您要將靜態檔案還是範本檔案用於屬性對應

    輸入 static 使用靜態對應檔案,或輸入 template 使用對應範本。

    輸入屬性對應檔案的本機路徑

    輸入本機系統上的屬性對應檔案的路徑。

  4. 部署更新的身分識別組態。
    sudo viocli identity configure

    部署身分識別組態會暫時中斷 OpenStack 服務。

結果

VMware Integrated OpenStack 與您的身分識別提供者解決方案進行整合,且同盟使用者和群組將匯入到 OpenStack 中。存取 VMware Integrated OpenStack 儀表板時,您可以選擇指定的身分識別提供者以同盟使用者身分登入。

範例:將 VMware Integrated OpenStack 與 Active Directory 聯盟服務整合

下列程序實作 VMware Integrated OpenStack 與 Active Directory 聯盟服務 (AD FS) 之間的身分識別聯盟。在此範例中,VMware Integrated OpenStack 部署的公用虛擬 IP 位址是 192.0.2.160,AD FS 角色已新增至位於 adfs.example.com 的 Windows Server 虛擬機器。

  1. 在 AD FS 中,為 VMware Integrated OpenStack 新增信賴方信任。

    1. AD FS 管理中,選取動作 > 新增信賴方信任...

    2. 按一下開始

    3. 選取手動輸入有關信賴方的資料,然後按下一步

    4. 輸入 OpenStack 做為顯示名稱,然後按下一步

    5. 選取 AD FS 設定檔,然後按下一步

    6. 下一步

    7. 選取啟用對 SAML 2.0 WebSSO 通訊協定的支援

    8. 輸入 https://192.0.2.160:5000/saml 做為信賴方 URL,然後按下一步

    9. 輸入 https://192.0.2.160:5000/saml 做為信賴方信任識別碼,依序按一下新增下一步

    10. 選取我不想設定多重要素驗證,然後按下一步

    11. 選取允許所有使用者存取此信賴方,然後按下一步

    12. 下一步,選取編輯宣告規則,然後按一下關閉

    13. 按一下新增規則...

    14. 選取傳遞或篩選傳入宣告,然後按下一步

    15. 輸入 UPN 傳遞做為規則名稱,然後選取 UPN 做為傳入宣告類型。

    16. 選取傳遞所有宣告值,然後按一下完成

  2. viouser 身分登入 OpenStack 管理伺服器

  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. 新增 AD FS 做為身分識別提供者。

    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. 部署更新的身分識別組態。

    sudo viocli identity configure

部署組態後,開啟 VMware Integrated OpenStack 儀表板。現在,您可以選取 AD FS 身分識別提供者,並以同盟使用者身分登入。