SAML認証の設定

    SAML認証の設定


    記事の要約

    本トピックはiDoperation Cloudのユーザ認証で、外部アイデンティティプロバイダーとして「SAML認証」を利用するための設定について説明します。
    以下の『利用までの作業の流れ』で作業内容を説明します。外部アイデンティティープロバイダー認証の設定を始めるためには、テクニカルサポートへの連絡が必要となります。

    利用までの作業の流れ

    利用までの流れを説明するために、外部アイデンティティプロバイダーの例としてAWSを用いて説明します。他の外部アイデンティティプロバイダーを利用する場合は、AWSの例を参考に利用する外部アイデンティティプロバイダーのドキュメントを参照して利用方法を確認してください。

    表内の順番に従い、作業を実施します。実施者が「お客様」の項目については、お客様で作業を実施してください。

    No実施者作業概要説明
    1お客様SAML認証の利用要望を連絡

    SAML認証を利用したい旨をテクニカルサポートへ連絡してください。

    2テクニカルサポート

    エンティティID、シングルサインオンURLのご案内  

    アプリケーション作成に必要な<エンティティID><シングルサインオンURL>をお客様に連絡します。

    3お客様アプリケーションの作成    AWSマネジメントコンソールでログインしアプリケーションの作成』を参照してお客様にてアプリケーションの作成を実施します。
    4お客様アプリケーションのユーザー割り当て  AWSマネジメントコンソールでログインしアプリケーションのユーザー割り当て』を参照して作成したアプリケーションユーザー割り当てをお願いします。
    5お客様メタデータドキュメント情報を連絡作成したアプリケーションの『メタデータドキュメント情報』をテクニカルサポートに連絡してください。『アプリケーションの作成』の手順5で取得します。
    6テクニカルサポートプロバイダー情報登録完了のご案内 連絡内容を基にSAML認証のプロバイダー情報登録をテクニカルサポートが実施して、iDoperation Cloud側の準備が完了したらお客様に連絡します。

     

    設定手順

    お客様が実施する設定手順について、説明します。

    アプリケーションの作成

    お客様にてアプリケーションの作成を実施します。テクニカルサポートより連絡した<エンティティID><シングルサインオンURL>が必要です。
    ここでは、AWS IAM Identity Centerのアプリケーションを利用する場合の手順で説明します。そのほかの外部アイデンティティプロバイダーで設定する場合は手順を読み替えてください。

    手順1  AWS管理コンソールにアクセスし、「IAM Identity Center」-「アプリケーション」の「アプリケーションを追加」をクリックする。
    手順2 「アプリケーションタイプを選択」の「設定プリファレンス」で「セットアップしたいアプリケーションがある」を選択する。
    手順3 「アプリケーションタイプ」で「SAML 2.0」を選択し「次へ」をクリックする。
    手順4 「アプリケーションを設定」で下記を設定する。

    No設定項目項目名設定値
    1アプリケーションを設定表示名iDoperation Cloud (任意の値に変更可能)
    説明任意

    手順5「IAM Identity Centerメタデータ」で「IAM Identity CenterSAMLメタデータファイル」をダウンロードする。
    ※このファイルは『利用までの作業の流れ』の「メタデータドキュメント情報を連絡」で使用します。

    手順6「アプリケーションメタデータ」で「メタデータの値を手動で入力する」を選択し、以下を設定する。

    No設定項目項目名設定値
    1アプリケーションメタデータ

    アプリケーション ACS URL

    テクニカルサポートからお客様へ連絡した<シングルサインオンURL>の値を設定する。
    アプリケーション SAML オーディエンステクニカルサポートからお客様へ連絡した<エンティティID>の値を設定する。

    手順7 「送信」をクリックしてアプリケーション作成を実行する。
    手順8 作成したアプリケーションを選択し、「詳細」にある「アクション」を選択し、プルダウンから「属性マッピングを編集」をクリックする。
    手順9 「属性マッピング」画面で「新しい属性マッピングを追加」をクリックし、下記を設定する。

    No.設定項目項目名設定値
    1属性マッピング(email)アプリケーションのユーザー属性http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
    2IAM Identity Center内のこの属性にマップします${user:email}
    3フォーマットunspecified

    手順10 Dynamic Role Mappingを利用する場合は、手順8~手順9と同じ手順で『Dynamic Role Mappingの設定』を実施する。

    アプリケーションのユーザー割り当て

    作成したアプリケーションを、iDoperationの利用を許可するユーザーに対して割り当てを実施してください。
    ここでは、AWS IAM Identity Centerのアプリケーションを利用する場合の手順で説明します。そのほかの外部アイデンティティプロバイダーで設定する場合は手順を読み替えてください。

    手順1    AWS管理コンソールにアクセスし、「IAM Identity Center」-「アプリケーション」のアプリケーションの作成で作成したアプリケーションをクリックする。
    手順2  「割り当てられたユーザーとグループ」で「ユーザーとグループの割り当て」をクリックする。
    手順3  「割り当て ユーザーとグループ」でiDoperationの利用を許可するユーザーまたはグループを選択して「完了」をクリックする。

    メタデータドキュメント情報

    メタデータドキュメント 情報をテクニカルサポートへ連絡してください。

    No項目取得・確認方法
    1クライアントIDアプリケーションの作成』の手順5で取得する。


    SAML属性によるロールの動的割り当て(Dynamic Role Mapping)

    Dynamic Role Mapping機能は、外部アイデンティティプロバイダーを使ってユーザがポータルにサインインすると、SAMLの属性情報(外部ロール名)と同名のユーザグループへ一時的に所属させます。そのユーザは、ユーザグループに割り当てられたロールや操作権限をサインアウトするまで使用できます。
    例えば、外部アイデンティティプロバイダーからSAMLの属性情報として外部ロール名「Administrator」が返却されると、ユーザは一時的に「Administrator」グループに追加され、そのグループに設定されているロールや操作権限でポータルを利用することができます。

    すでにSAML認証を利用している場合は、『アプリケーションの作成』手順8~手順9を参考に、外部ロール名を示す属性を指定してください。

    Dynamic Role Mappingの設定

    Dynamic Role Mappingを利用するには、以下の条件があります。

    No条件
    1外部ロール名を設定するSAML属性名を「roles」にすること。
    ※「roles」には複数の外部ロール名を設定できます。
    2外部ロール名はiDoperationのユーザグループ名に大文字小文字も含めて完全一致すること。

    AWS IAM Identity Centerの属性マッピングの設定例は以下です。

    No.設定項目
    項目名
    設定値
    1属性マッピング(roles)
    アプリケーションのユーザー属性
    roles
    2IAM Identity Center内のこの属性にマップします
    ${user:givenName}
    ※user:givenNameは例です。送信したい外部ロール名を示す属性に変更してください。
    3フォーマットunspecified


    以下のSAML ResponseのAssertionの場合は、「Internal」「Administrator」のユーザグループに一時的に所属させる例です。

    <saml:Assertion ...>
      <saml:Subject>
        <saml:NameID
          
    Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">
          user@example.com
        </saml:NameID>
      </saml:Subject>
      <saml:AttributeStatement>
        <saml:Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress">
          <saml:AttributeValue>user@example.com</saml:AttributeValue>
        </saml:Attribute>
        <saml:Attribute Name="
    roles">
          <saml:AttributeValue>
    Internal</saml:AttributeValue>
          <saml:AttributeValue>
    Administrator
    </saml:AttributeValue>
        </saml:Attribute>
      </saml:AttributeStatement>
    </saml:Assertion>