内容

概要

前提条件

要件

使用するコンポーネント

背景説明

設定

ステップ1:CUCMからSPメタデータをエクスポートする

ステップ2:AD FSからIDPメタデータをダウンロードする

ステップ3:IdPのプロビジョニング

ステップ4:SAML SSOの有効化

確認

トラブルシュート

概要

このドキュメントでは、Active Directoryフェデレーションサービス(AD FS)を使用して、クラスタごとにシングルセキュリティアサーションマークアップ言語(SAML)アイデンティティプロバイダー(IdP)接続/アグリーメントを設定する方法について説明します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

- Cisco Unified Communications Manager(CUCM)11.5以降

- Cisco Unified Communications Manager IM and Presenceバージョン11.5以降

- Active Directoryフェデレーションサービスバージョン2.0

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。

- Active Directoryフェデレーションサービスバージョン2.0(IdP)

- Cisco Unified Communications Manager バージョン 11.5

- Cisco Unified Presence サーバ バージョン 11.5

背景説明

SAML SSOでは、サービスプロバイダー(SP)とIdPの間の信頼の輪である必要があります。 この信頼は、信頼（メタデータ）が交換されるときに、SSOイネーブルメントの一部として作成されます。 CUCMからメタデータをダウンロードしてIdPにアップロードします。同様に、IdPからメタデータをダウンロードしてCUCMにアップロードします。

以前のCUCM 11.5では、発信元ノードがメタデータファイルを生成し、クラスタ内の他のノードからメタデータファイルを収集します。  すべてのメタデータファイルを1つのzipファイルに追加し、管理者に提示します。管理者はこのファイルを解凍し、IdP上の各ファイルをプロビジョニングする必要があります。たとえば、8ノードクラスタの8個のメタデータファイルです。

クラスタ機能ごとの単一SAML IdP接続/アグリーメントは、11.5から導入されました。この機能の一部として、CUCMは、クラスタ内のすべてのCUCMおよびIMPノードに対して単一のサービスプロバイダーメタデータファイルを生成します。メタデータファイルの新しい名前形式は<hostname>-single-agreement.xmlです

基本的に、1つのノードがメタデータを作成し、クラスタ内の他のSPノードにプッシュします。これにより、プロビジョニング、メンテナンス、管理が容易になります。たとえば、8ノードクラスタに対して1つのメタデータファイルがあります。

クラスタ全体のメタデータファイルは、クラスタ内のすべてのノードでキーペアが確実に使用されるマルチサーバtomcat証明書を使用します。メタデータファイルには、クラスタ内の各ノードのアサーションコンシューマサービス(ACS)URLのリストもあります。

CUCMおよびCisco IM and Presenceバージョン11.5クラスタ全体(クラスタごとに1つのメタデータファイル)とノードごと（既存のモデル）の両方をサポートします。

このドキュメントでは、AD FS 2.0を使用してSAML SSOのクラスタ全体モードを設定する方法について説明します。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期（デフォルト）設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。

設定

ステップ1:CUCMからSPメタデータをエクスポートする

Webブラウザを開き、管理者としてCUCMにログインし、[System] > [SAML Single Sign On]に移動します。

デフォルトでは、[クラスタワイド]オプションボタンが選択されています。[すべてのメタデータをエクスポート]をクリックします。管理者に<hostname>-single-agreement.xmlという名前で提示されるメタデータデータファイル

ステップ2:AD FSからIDPメタデータをダウンロードする

IdPメタデータをダウンロードするには、リンクhttps:// <FQDN of ADFS>/federationmetadata/2007-06/federationmetadata.xml

ステップ3:IdPのプロビジョニング

図に示すように、[AD FS 2.0 Management/Trust Relation Ships/Relying Party trust]に移動します。[Add Relying Party Trust]をクリックします。

図に示すように、[Add Relying Party Trust Wizard]が開き、[Start]をクリックします。

証明書利用者に関するインポートデータをファイルからクリックします。CUCM SAML SSO設定ページからダウンロードしたSPメタデータを参照します。次に、図に示すように[Next]をクリックします。

証明書利用者の[Display Name]とオプションのメモを入力します。図に示すように、[Next]をクリックします。

[Permit all users to access this relying party]を選択して、すべてのユーザがこの証明書利用者にアクセスできるようにして、図に示すように[Next]をクリックします。

[Ready to Add Trust] ページで、設定されている証明書利用者信頼の設定を確認できます。次に、図に示すように[Next]をクリックします。

[完了]ページで、証明書利用者信頼がAD FS構成データベースに正常に追加されたことを確認します。図に示すように、[Box]のチェックマークを外し、[Close]をクリックします。

図に示すように、[Relying Party Trusts]を右クリックして[Edit Claim Rules]をクリックします。

次に、図に示すように[Add Rule]をクリックします。

[Add Transform Claim Rule]が開いたら、図に示すように、デフォルトのクレームルールテンプレート[Send LDAP Attributes as Claims]をクリックします。

次の図に示すように、[Configure Claim Rule]をクリックします。LDAP属性は、CUCMのLDAPディレクトリ設定のLDAP属性と一致している必要があります。送信要求の種類をuidとして管理します。図に示すように[Finish]をクリックします。

証明書利用者のカスタムルールを追加します。[Add Rule] をクリックします。図に示すように、[カスタム規則を使用して要求を送信]を選択し、[次へ]をクリックします。

[要求ルールの構成]で、[要求ルール名]を入力し、ウィザードの[カスタムルール]フィールドに指定された過去の要求ルールをコピーします。その後、要求ルールの名前修飾子とspname修飾子を変更します。図に示すように[Finish]をクリックします。

クレームルール：

c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"]

=> issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:2.0:nameid-format:transient", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/namequalifier"] = "http://<FQDN of ADFS>/adfs/com/adfs/services/trust", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/spnamequalifier"] = "<Entity ID in the SP Metadata>");

Entity ID = Open the SP metadata and check the Entity ID. Basically, its the CUCM Publisher’s FQDN.

図に示すように、[適用]をクリックして、[OK]をクリックします。

ステップ4:SAML SSOの有効化

Webブラウザを開き、管理者としてCUCMにログインし、[System] > [SAML Single Sign On]に移動します。

デフォルトでは、[クラスタワイド]オプションボタンが選択されています。図に示すように[Enable Saml SSO]をクリックします。

図に示すように、ポップアップはWebサーバの再起動に関する警告と、idpに応じてクラスタ全体のSAML SSOまたはノードごとのSAML SSOを選択するための情報を通知します。[Continue] をクリックします。

クラスタ全体のSSOを有効にする基準は、マルチサーバのtomcat証明書がすでに配備されている必要があることです。図に示すように、[Test for Multi-Server tomcat Certificate]をクリックします。

確認が完了したら、すべてのノードにマルチサーバ証明書が表示され、[すべてのノードにマルチサーバ証明書があります]と表示され、[次へ]をクリックします（図を参照）。

図に示すように、[次へ]をクリックします。

ダウンロードしたIdPメタデータを参照して選択します。図に示すように[Import IdP Metadata]をクリックします。

次の図に示すように、ページで[Import succeeded for all servers]が確認され、[Next]をクリックします。

図に示すように、[Next] をクリックします。これは、初期SAML SSO設定ページからSPメタデータがすでにエクスポートされているためです。

CUCMはLDAPディレクトリと同期している必要があります。ウィザードには、LDAPディレクトリで設定されている有効な管理者ユーザが表示されます。図に示すように、ユーザを選択し、[Run SSO Test]をクリックします。

図に示すように、プロンプトが表示されたら、ユーザIDとそれぞれのパスワードを入力します。

図に示すように、ポップアップはテストが成功したことを示します。

図に示すように、[Finish]をクリックして、SSOを有効にするための設定を完了します。

図に示すページは、すべてのサーバでSAML SSOの有効化プロセスが開始されていることを示しています。

ログアウトし、SAML SSOクレデンシャルを使用してCUCMに再度ログインします。[システム(System)] > [SAMLシングルサインオン(SAML Single Sign On)]に移動します。図に示すように、クラスタ内の他のノードに対して[SSOテストの実行(Run SSO Test)]をクリックします。

確認

ここでは、設定が正常に機能しているかどうかを確認します。

SAML SSOが有効になっているノードのSSOテストが成功したことを確認します。[System] > [SAML Single Sign On]に移動します。成功したSSOテストのステータスは[Passed]です。

SAML SSOがアクティブになると、次の図に示すように、CUCMログインページの[Installed Applications]および[Platform Applications]が表示されます。

SAML SSOがアクティブになると、次の図に示すように、IM and Presenceログインページの[Installed Applications and Platform Applications]がリストされます。

トラブルシュート

ここでは、設定のトラブルシューティングに使用できる情報を示します。

デバッグするSSOログを設定するには、コマンドset samltrace level DEBUGを使用します

RTMTを使用するか、CLIを使用してactivelog /tomcat/logs/ssosp/log4j/*.logの場所からSSOログを収集します。

SSOログの例は、生成されたメタデータと他のノードへの送信を示します

2016-05-28 14:59:34,026 DEBUG [http-bio-443-exec-297] cluster.SAMLSSOClusterManager - Call GET API to generate Clusterwide SP Metadata in the Local node.

2016-05-28 14:59:47,184 DEBUG [http-bio-443-exec-297] cluster.SAMLSSOClusterManager - Call to post the generated SP Metadata to other nodes

2016-05-28 14:59:47,185 INFO  [http-bio-443-exec-297] cluster.SAMLSSOClusterManager - Begin:postClusterWideSPMetaData

2016-05-28 14:59:47,186 DEBUG [http-bio-443-exec-297] cluster.SAMLSSOClusterManager - Nodes [cucm1150, cucm1150sub.adfs.ucce.com]

2016-05-28 14:59:47,186 DEBUG [http-bio-443-exec-297] cluster.SAMLSSOClusterManager - Post ClusterWideSPMetadata to the cucm1150

2016-05-28 14:59:47,187 DEBUG [http-bio-443-exec-297] cluster.SAMLSSOClusterManager - Post ClusterWideSPMetadata to the cucm1150sub.adfs.ucce.com