intra-mart Accel Platform 設定ファイルリファレンス 第26版 2020-08-01

SSO連携用マッピング設定

概要

intra-mart Accel Platform(SSO認証プロバイダ) から iWP / iAF(SSOサービスプロバイダ) へシングルサインオン(以下 SSO と記述します)接続するための設定を行います。
IM-HybridSSO の詳細は、「セットアップガイド」-「iAP-iWP間SSO連携」を参照してください。

モジュール iAP-iWP間SSO連携モジュール(IM-HybridSSO)
フォーマットファイル(xsd) WEB-INF/schema/hybrid-sso-mapping-config.xsd
設定場所 WEB-INF/conf/hybrid-sso-mapping-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<hybrid-sso-mapping-config
  xmlns="http://www.intra-mart.jp/hybrid_sso/hybrid-sso-mapping-config"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.intra-mart.jp/hybrid_sso/hybrid-sso-mapping-config ../schema/hybrid-sso-mapping-config.xsd ">

  <common-settings>
    <site-domain>example.com</site-domain>    
    <retry-interval>300</retry-interval>
    <http-only>true</http-only>
    <logout-timeout>60</logout-timeout>
  </common-settings>
  
  <mappings>
    <mapping id="sample">
      <tenant-id>tenant-a</tenant-id>
      <provider>
        <provider-id>provider-0</provider-id>
        <end-point>http://intra-mart.example.com:8080/imart/services/AdmissionService</end-point>
        <login-group>default</login-group>
        <user>aoyagi</user>
        <password cryption="category">0A1msI0DLNo=</password>
        <logout-url>http://intra-mart.example.com:8080/imart/user.logout</logout-url>
        <site-path>/imart</site-path>
      </provider>
    </mapping>
  </mappings>
  
</hybrid-sso-mapping-config>

IM-HybridSSO の共通設定

タグ名 common-settings
IM-HybridSSO に関する共通項目を設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <common-settings>
    ...
  </common-settings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ hybrid-sso-mapping-config

サイトドメイン設定

タグ名 site-domain
サイトドメインの設定を行います。
IM-HybridSSO では、認証情報の管理に Cookie を利用します。
この設定では認証情報を格納した Cookie を参照可能なサイトドメイン(Cookie のDomain属性に指定する値)を設定します。
IM-HybridSSO を構成するサーバは、全て同一のドメイン上に構築する必要があります。
以下の構成の場合、サイトドメインに設定する値は「intra-mart.jp」です。
  • SSO認証プロバイダ: iap.intra-mart.jp
  • SSOサービスプロバイダ1: iwp1.intra-mart.jp
  • SSOサービスプロバイダ2: iwp2.intra-mart.jp

【設定項目】

<hybrid-sso-mapping-config>
  <common-settings>
    <site-domain>example.com</site-domain>
  </common-settings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 サイトドメインを指定します。
単位・型 文字列
省略時のデフォルト値 なし
親タグ common-settings

再実行時間設定

タグ名 retry-interval
SSOサービスプロバイダ へのWebサービスの再実行間隔を設定します。
SSO認証プロバイダ はユーザがログイン時にSSO連携用マッピング設定で設定されている SSOサービスプロバイダ に対して認証情報を取得するWebサービスを実行します。
このWebサービスで接続エラーが発生した場合、一定の時間が経つまで接続先の SSOサービスプロバイダ に対しての認証情報の取得を行いません。
再実行時間設定では、接続エラーが発生した際に再度 認証情報の取得を行うまでの間隔を設定します。

この値に 0 を設定した場合、一度接続エラーが発生した SSOサービスプロバイダ に対しての認証情報の取得は SSO認証プロバイダ の再起動を行うまで行いません。
また、マイナスの値を設定した場合は、デフォルト値(300)が採用されます。

【設定項目】

<hybrid-sso-mapping-config>
  <common-settings>
    <retry-interval>300</retry-interval>
  </common-settings>
</hybrid-sso-mapping-config>

必須項目 ×
複数設定 ×
設定値・設定する内容 認証情報取得時の接続エラー発生後にふたたび認証情報取得を行うまでの間隔(秒)を設定します。
単位・型 数値(秒)
省略時のデフォルト値 300
親タグ common-settings

HttpOnly設定

タグ名 http-only
HttpOnly属性を利用するかどうかを設定します。
IM-HybridSSO では、認証情報の管理に Cookie を利用します。
この設定では認証情報を格納する Cookie に HttpOnly属性を指定するかどうかを設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <common-settings>
    <http-only>true</http-only>
  </common-settings>
</hybrid-sso-mapping-config>

必須項目 ×
複数設定 ×
設定値・設定する内容
true CookieにHttpOnly属性を付与します。
false CookieにHttpOnly属性を付与しません。
単位・型 真偽値(true/false)
省略時のデフォルト値 true
親タグ common-settings

ログアウトタイムアウト設定

タグ名 logout-timeout
SSOサービスプロバイダ へのログアウト実行時のタイムアウト時間を設定します。
IM-HybridSSO では、SSO認証プロバイダ にてログアウトを行うと SSO連携用マッピング設定 で設定されている SSOサービスプロバイダに対してログアウトを行います。
ログアウト時には SSOサービスプロバイダ でのログアウト処理の完了を確認した後、SSO認証プロバイダ でのログアウトを行います。
ログアウトタイムアウト設定では、SSOサービスプロバイダ でのログアウトの完了を待つ最大時間を設定します。
SSOサービスプロバイダからログアウト時に、ログアウトタイムアウト設定 で指定した時間を超えても応答が無い場合はタイムアウトとし、SSO認証プロバイダ のログアウトを行います。

この値に 0 を設定した場合、SSOサービスプロバイダ でのログアウトを待たずに SSO認証プロバイダ のログアウトを行います。
また、マイナスの値を設定した場合は、デフォルト値(60)が採用されます。

【設定項目】

<hybrid-sso-mapping-config>
  <common-settings>
    <logout-timeout>60</logout-timeout>
  </common-settings>
</hybrid-sso-mapping-config>

必須項目 ×
複数設定 ×
設定値・設定する内容 SSOサービスプロバイダのログアウトの最大応答待ち時間(秒)を設定します。
単位・型 数値(秒)
省略時のデフォルト値 60
親タグ common-settings

SSOマッピング一覧の設定

タグ名 mappings
IM-HybridSSO 接続を行う SSO認証プロバイダ と SSOサービスプロバイダのマッピング情報をまとめる設定です。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    ...
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ hybrid-sso-mapping-config

SSOマッピング設定

タグ名 mapping
SSO接続を行う SSO認証プロバイダ と SSOサービスプロバイダのSSOマッピング情報を設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      ...
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目 ×
複数設定
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ mappings

【属性】

属性名 説明 必須 デフォルト値
id
IM-HybridSSO のマッピングを特定する、システムでユニークなIDです。
この値はすべてのマッピングで重複しないようにしてください。
なし
enable
マッピングの有効フラグです。
true マッピングを有効とします。
false マッピングを無効とします。
× true

SSO認証プロバイダ対象テナント設定

タグ名 tenant-id
SSOマッピング設定に対して、SSO認証プロバイダとして動作する対象となるテナントのIDを設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <tenant-id>tenant-a</tenant-id>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 SSO認証プロバイダとして動作する対象となるテナントID
単位・型 文字列
省略時のデフォルト値 なし
親タグ mapping

SSOサービスプロバイダ設定

タグ名 provider
SSOマッピング設定に対して、SSOサービスプロバイダの情報を設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        ...
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 なし
単位・型 なし
省略時のデフォルト値 なし
親タグ mapping

SSOサービスプロバイダID設定

タグ名 provider-id
SSOサービスプロバイダのプロバイダIDを設定します。
プロバイダIDは SSOサービスプロバイダ側で設定ファイルで定義したIDを設定してください。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <provider-id>provider-0</provider-id>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 SSOサービスプロバイダのプロバイダID
単位・型 文字列
省略時のデフォルト値 なし
親タグ provider

認証情報取得の接続先エンドポイント設定

タグ名 end-point
SSOサービスプロバイダから認証情報を取得するための接続先エンドポイントを設定します。
接続先エンドポイントは、Webサービス「AdmissionService」のエンドポイントURLです。

通常、エンドポイントのURLは以下の通りです。

http://<HOST>:<PORT>/<CONTEXT_PATH>/services/AdmissionService

または

https://<HOST>:<PORT>/<CONTEXT_PATH>/services/AdmissionService

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <end-point>http://intra-mart.example.com:8080/imart/services/AdmissionService</end-point>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 SSOサービスプロバイダから認証情報を取得するための接続先エンドポイントURL
単位・型 文字列(URL)
省略時のデフォルト値 なし
親タグ provider

SSOサービスプロバイダ対象ログイングループ設定

タグ名 login-group
SSOサービスプロバイダとして動作するログイングループを設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <login-group>default</login-group>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 SSOサービスプロバイダとして動作するログイングループID
単位・型 文字列
省略時のデフォルト値 なし
親タグ provider

Webサービス実行ユーザ設定

タグ名 user
SSOサービスプロバイダ から認証情報を取得するWebサービスを実行する SSOサービスプロバイダ のユーザを設定します。
ここで設定するユーザは SSOサービスプロバイダ にて Webサービス AdmissionService の オペレーション publishKey に対して実行を行う権限が設定されている必要があります。
Webサービス実行用に新しくユーザを作成してWebサービス実行用のロールを付与するか、または、既存のユーザにWebサービス実行用のロールを付与してください。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <user>aoyagi</user>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 認証情報を取得するWebサービスを実行するユーザ
単位・型 文字列
省略時のデフォルト値 なし
親タグ provider

Webサービス実行ユーザパスワード設定

タグ名 password
SSOサービスプロバイダから認証情報を取得するWebサービスを実行する SSOサービスプロバイダのユーザのパスワードを設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <password cryption="category">0A1msI0DLNo=</password>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容
認証情報を取得するWebサービスを実行するユーザのパスワード。
cryption 属性を設定することで、パスワードの値を暗号化して設定可能です。
単位・型 文字列
省略時のデフォルト値 なし
親タグ provider

【属性】

属性名 説明 必須 デフォルト値
cryption
パスワードの暗号化方式のカテゴリを指定します。
暗号化方式のカテゴリは「暗号化設定」で設定した値が利用可能です。
この属性が未指定の場合は、暗号化なしでパスワードを指定します。
× なし

注意

パスワード文字列を暗号化するためのツールは提供されません。
Java API CryptionUtil を利用して、指定したカテゴリで暗号化するプログラムを作成する必要があります。

ログアウト先URL

タグ名 logout-url
SSOサービスプロバイダからログアウトを行うためのURLを指定します。
ログアウト先URLは、SSOサービスプロバイダのログアウトサーブレットのURLです。

通常、ログアウトサーブレットのURLは以下の通りです。

http://<HOST>:<PORT>/<CONTEXT_PATH>/user.logout

または

https://<HOST>:<PORT>/<CONTEXT_PATH>/user.logout

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <logout-url>http://intra-mart.example.com:8080/imart/user.logout</logout-url>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 SSOサービスプロバイダからログアウトを行うためのURL
単位・型 文字列(URL)
省略時のデフォルト値 なし
親タグ provider

サイトパス設定

タグ名 site-path
サイトパスを設定します。
IM-HybridSSO では、認証情報の管理に Cookie を利用します。
この設定では認証情報を格納した Cookie を参照可能なサイトパス(Cookie の Path属性に指定する値)を設定します。

通常の場合、サイトパスは、/ + <CONTEXT_PATH> を設定します。

【設定項目】

<hybrid-sso-mapping-config>
  <mappings>
    <mapping id="sample">
      <provider>
        <site-path>/imart</site-path>
      </provider>
    </mapping>
  </mappings>
</hybrid-sso-mapping-config>

必須項目
複数設定 ×
設定値・設定する内容 サイトパス
単位・型 文字列(/xxxxx)
省略時のデフォルト値 なし
親タグ provider