検証済みのAI要約◀▼

AWSをSAMLのIDプロバイダーとして使用して、Amazon Connectおよびコンタクトセンターのシングルサインオン(SSO)を設定します。AWS IAM IDセンターでSAMLアプリケーションを設定し、組織と同じAWSアカウントに所属していることを確認します。Amazon Connectの場合は、サービス管理ポリシーで権限を管理します。コンタクトセンターの場合は、Cognitoユーザープールを設定し、エージェント認証用のIDプロバイダーを指定します。

SAMLベースのIDプロバイダーとして、Amazon ConnectとZendeskコンタクトセンターのAWSへのSSO を設定できます。Amazon ConnectとコンタクトセンターにはそれぞれSAML アプリケーションが必要です。必要なSAMLアプリケーションはAWS IAMアイデンティティ センターで作成および設定されます。

この記事は、AWS組織とIAMアイデンティティセンターが、AWS組織内の 別のAWSアカウント(および場合によっては異なるリージョン)にすでに設定されていることを前提としています。SAML アプリケーションは、AWS組織が設定されているアカウントと同じAWS IAMアイデンティティセンターで 作成する必要があります。作業を開始する前に、この 環境にアクセスできるか、必要なアクセス権を持つユーザーがSAML アプリケーションの作成を手伝ってくれることを確認してください。

この記事では、次のトピックについて説明します。
  • Amazon ConnectとのSSOの設定
  • コンタクト センターとのZendesk SSOの設定

Amazon ConnectとのSSOの設定

Amazon Connectのシングルサインオン(SSO)を設定するには、IAMアイデンティティセンターでSAMLアプリケーション を設定します。IAMアイデンティティセンターは通常、別のAWSアカウントとリージョンにあります。ただし、IDプロバイダー、ロール、ポリシーは、 Amazon Connectと同じAWSアカウント内に 設定する必要があります。Amazon Connectのドキュメントを参照してください。「AWSをIDプロバイダーとして Amazon ConnectとのSSOを設定する方法」では、AWSをIDプロバイダーとしてAmazon ConnectとのSSOを設定する 方法を詳しく解説しています。

サービス管理ポリシー(SCP)を使用して、ユーザーとロールがAmazon Connectで実行できる操作に関する権限 を管理し、重要なリソースを保護し、システムの安全性を高めることを お勧めします。「Amazon Connectのセキュリティのベストプラクティス」を参照してください。

次の例は、Amazon Connectインスタンスおよび関連するロールが 削除されないようにするために使用するSCPを示しています。

<pre><code class="language-json">
{    
  "Version":"2012-10-17",
  "Statement": [
    {
      "Sid":"AmazonConnectRoleDenyDeletion",
      "Effect":"Deny",
      "Action": [
        "iam:DeleteRole"
      ],
      "Resource": [
        "arn:aws:iam::*:role/***Amazon Connect user role***"
      ]
    },
    {
      "Sid":"AmazonConnectInstanceDenyDeletion",
      "Effect":"Deny",
      "Action": [
        "connect:DeleteInstance"         
      ],
      "Resource": [
        "***Amazon Connect instance ARN***"
      ]
    }
  ]
} 
</pre></code>

コンタクトセンターとのSSOの設定

コンタクトセンターのシングルサインオン(SSO)を設定するには、 SAMLアプリケーションをサインインに使用するようにCognitoユーザープールを設定する必要があります。Cognito UserPoolは、ZendeskコンタクトセンターCloudFormationテンプレートによって作成された ものです。

このプロセスの手順は次のとおりです。

  • 必要なCognitoユーザープール の詳細を収集する
  • AWS IAM アイデンティティセンターでSAMLアプリケーションを作成する
  • Cognitoユーザープールで IDプロバイダーを設定する
  • エージェント認証に使用する このIDプロバイダーを指定する

必要なCognitoユーザープールの詳細を収集する

Zendeskコンタクトセンターのシングルサインオン(SSO)を設定するための最初のステップは、 必要なCognitoユーザープールの詳細を収集することです。

必要なCognitoユーザープールの詳細を収集するには
  1. ZendeskコンタクトセンターCloudFormationスタックが作成された AWSアカウントにログインします。
  2. Cognitoサービスで、コンタクトセンターCloudFormationスタックの作成時に作成された ユーザープールを開きます(正しいリージョンにいることを確認します)。

    ユーザープールIDをメモしておきます。

  3. 「アプリのインテグレーション」タブをクリックし、Cognitoドメインプレフィックスをメモします。

    これは、.auth.regionxxxより前のCognitoドメインの最初の部分です。これは CloudFormationテンプレートで指定された値でもあるため、必要に応じて「CloudFormationパラメータ」タブから値をコピー できます。

AWS IAMアイデンティティセンターでSAMLアプリケーションを作成する

コンタクトセンターのSSO(シングルサインオン)を設定する2番目のステップは、 AWS IAMアイデンティティセンターでSAMLアプリケーションを作成することです。

AWS IAMアイデンティティセンターでSAMLアプリケーションを作成するには
  1. AWS IAMアイデンティティセンターが設定されているAWSアカウントにログインします。
  2. 「アプリケーションの割り当て」>「アプリケーション」を選択し、「アプリケーション を追加」をクリックします。
  3. 「カスタムSAML 2.0アプリケーションを追加」をクリックします。
  4. 次の情報を入力します。
    • 表示名はSAMLタイルに表示される名前です。
    • アプリケーション開始URL(オプション)は、コンタクトセンターのURLです。これは、Amazon Connectで承認されたオリジンとして追加されたURLと同じです 。フォーマットは次のとおりです 。

      https://${LMWorkspace}.${LMRegion}.localmeasure.com

    • リレーのステータスは空白のままにしておきます。
    • アプリケーションメタデータで、「メタデータ 値を手動で入力」を選択し、以下を指定します。
      • アプリケーションACSのURL: https://${yourDomainPrefix}.auth.${region}.amazoncognito.com/saml2/idpresponse
      • アプリケーションSAMLオーディエンス: urn:amazon:cognito:sp:${yourUserPoolID}

  5. 「送信」をクリックします。
  6. 「アクション」>「属性マッピングを編集」を選択します。

  7. アプリケーションに次の属性を入力します。
    表1
    SAML属性 文字列値またはユーザー属性にマッピング フォーマット
    件名 ${user:email} 永続的
    http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress ${user:email}  

  8. 「変更を保存」をクリックします。
  9. 「割り当て済みユーザー」で「ユーザーの割り当て」をクリックし、コンタクトセンターにアクセスできるユーザーまたは ユーザーグループを追加します。
  10. もう一度「アクション」をクリックし、「設定を編集」を選択します。
  11. 「IAMアイデンティティセンターSAMLメタデータファイル」で、「ダウンロード」をクリックします。

    このファイルを保存します。Cognitoの設定を完了するために必要になります。

CognitoユーザープールでIDプロバイダーを設定する

Zendeskコンタクトセンターのシングルサインオン(SSO)を設定する3番目のステップは、 CognitoユーザープールでIDプロバイダーを設定することです。

CognitoユーザープールでIDプロバイダーを設定するには
  1. Cognitoユーザープールを含むAWSアカウントにログインします。
  2. Cognitoサービスで、ユーザープールを開きます。
  3. 「サインインエクスペリエンス」タブをクリックし、「ID プロバイダーを追加」をクリックします。

  4. 「SAML」をクリックします。
  5. 「このユーザープールでSAMLフェデレーションを設定する」に、 次のオプションを入力します。
    • プロバイダー名:このIDプロバイダーの名前を入力します。名前にスペースは 使用しないでください。
    • メタデータドキュメントソース:「メタデータドキュメントをアップロード」>「 ファイルを選択」を選択し、AWS IAM アイデンティティセンターからダウンロードしたSAMLメタデータファイルを選択します。
  6. 「SAMLプロバイダーとユーザープール間のマッピング属性」で、 次の属性を設定します。
    • ユーザープール属性:メール
    • SAML属性: http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
  7. 「IDプロバイダーを追加」をクリックします。

    この時点で、 必要なIDプロバイダーが作成されました。

エージェント認証に使用されるこのIDプロバイダーを指定する

コンタクトセンターのシングルサインオンを設定する最後のステップは、 エージェント認証に使用するIDプロバイダーを指定することです。

エージェント認証に使用するIDプロバイダーを指定するには
  1. タブ表示で、「アプリのインテグレーション」をクリックし、ページの下部にある「 アプリクライアント」をクリックします。
  2. アプリクライアントの「ホストされたUI」セクションで、「編集」をクリックします

  3. 「ホストされた登録およびサインインページ」で、「IDプロバイダー」ドロップダウン リストをクリックし、「CognitoユーザープールでIDプロバイダーを設定する」で設定したIDプロバイダーを選択します。
  4. 「変更を保存」をクリックします。

    Zendeskでは、アカウントの設定を完了するために、 IDPの名前(「サインインエクスペリエンス」で設定)が必要です。Zendeskと共有されるCloudFormationの出力情報と一緒に これを含めます。

Powered by Zendesk