direct

【参考】

2021年07月06日時点での情報で掲載しています。

「direct」との認証連携を設定します。

【注意】

  • directがSAMLで認証するキーは「メールアドレス」です。
  • IIJ IDサービス内のユーザ属性にdirectの「メールアドレス」と同一の値を保持しておく必要があります。
  • directがシングルサインオンするためには、対象ユーザが所定の「アカウント管理グループ」に所属している必要があります。
    詳しくは、directの販売代理店、または、ベンダーにご確認ください。
  • directはIdPイニシエートSSOには対応していません。利用時にユーザは「https://direct4b.com/sso」にアクセスし、ユーザ自身が所属する「アカウント管理グループID」を入力する必要があります。

1. IIJ IDサービスにSAMLアプリケーションを登録する

1. 「アプリケーション」の「アプリケーションの管理」 をクリックします。

2. 「アプリケーションを追加する」をクリックし、「カスタムアプリケーションを追加する」をクリックします。

3. 「SAMLアプリケーション」を選択し、「次に進む」をクリックします。


4. アプリケーション情報を入力し、「アプリケーションを追加する」をクリックします。


項目内容備考
アプリケーション名例)direct必須
アプリケーションの説明例)こだわりの現場を支えるビジネスチャット任意
アプリケーションロゴ(ファイルアップロード)任意
IDプロバイダの選択「アプリケーション専用のエンティティIDを利用」を選択必須
2. IIJ IDサービスのIDプロバイダ情報を確認する

1. 作成されたアプリケーションに対して「編集する」をクリックします。

2. 「IDプロバイダ情報」をクリックします。

3. 表示された「SSOエンドポイントURL(Redirectバインディング)」、及び「PEM」の値を控えます。

【参考】

  • 「PEM」は、必ず「-----BEGIN CERTIFICATE-----」からはじまり、「-----END CERTIFICATE-----」で終わる形式です。
  • 「PEM」に書かれている値を改行などせずにそのままテキストファイルに張り付けてください。
  • 「PEM」情報をファイルでアップロードする必要があります。

3. directにIDプロバイダ情報を登録する
【参考】

以下の手順はあらかじめdirect内で以下の対応を行なっている前提となります。

  • シングルサインオン対象の全ユーザを所定の「アカウント管理グループ」に登録する
  • シングルサインオン対象の全ユーザにそれぞれ「メールアドレス」を設定する
    ※メールアドレスではなくログインIDを使ってdirectにログインされている場合は、メールアドレスが設定されていない場合があります。

1. directに管理者アカウントでログインします。

2. メニューから「アカウント管理」を選択します。

3. 対象のアカウントグループIDの「(歯車)」をクリックし、プルダウンメニューを表示します。「シングルサインオン」を選択します。

4. 以下のとおり設定し、「変更」をクリックします。

項目内容備考
SAML 認証を使う「SAML情報を入力する」をチェック
シングルサインオン以外でのログインを禁止する(任意)

お客様の利用方針に応じて判断してください

Identity ProviderのエンドポイントURL

手順2-3で確認した「SSOエンドポイントURL(Redirectバインディング)」の値


ログアウト後に

遷移する URL


(任意のURL)
Identity Providerの公開鍵

手順2-3で取得した「PEM」の値を保存したファイルをアップロード


5. 同じ画面にある「Service Provierのメタデータのダウンロード」をクリックし、SPのメタデータを取得します。


4. IIJ IDサービスのSAMLアプリケーションを設定する

1. 「アプリケーション」の「アプリケーションの管理」 をクリックします。

2. 引アプリケーションの「編集する」をクリックします。

3. 「フェデレーション設定」をクリックします。

4. 以下のとおり設定し、「変更を適用する」をクリックします。

項目内容備考
SAML基本情報SPのメタデータをアップロードする「SPのメタデータをアップロードする」をチェック
SPメタデータ手順3-5で入手したSPのメタデータをアップロード

検証後の遷移先(RelayState)

(空欄)


アプリケーションのトップページURL

https://direct4b.com/sso


アサーションの署名アルゴリズム

例)
RSA-SHA256


ユーザ識別子(NameID)の指定

関連付けるユーザ属性例)
Entitlements
  • タイプと一致する値を使用する
  • タイプ: direct_email
directの「メールアドレス」の値が格納されている属性を指定します
属性値関連付け(ユーザ属性)http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress例)
Entitlements
  • タイプと一致する値を使用する
  • タイプ: direct_email
directの「メールアドレス」の値が格納されている属性を指定します

【参考】

「アサーションの署名アルゴリズム」は連携先サービス側で指定などがない場合、デフォルト値の「RSA-SHA256」を選択してください。

「RSA-SHA256」を指定して動作しない場合及び連携先サービス側で明示的にそれ以外のものが指定されている場合は、「RSA-SHA512」、または「RSA-SHA1」に変更し、連携を確認してください。


【参考】

  • 「ユーザ識別子(NameID)」の指定は、ユーザ単位ではなくSAMLアプリケーション単位でのみ設定できます。
  • 「ユーザ識別子(NameID)」の指定した属性にユーザが値を保持していない場合は SAML連携は失敗します。
  • 「ユーザ識別子(NameID)」にID以外の複数の値を持つ属性で指定する方法は以下のとおりです。
    例として、IIJ IDサービスの各ユーザの属性「Entitlements」に以下のように値が設定されています。

    • 連携先サービス側に「ユーザ識別子(NameID)」として渡す値が「iij-jiro@iij.ad.jp」の場合は、「プライマリの値を使用する」をチェックします。
    • 連携先サービス側に「ユーザ識別子(NameID)」として渡す値が「iij-jiro」の場合は、「タイプと一致する値を使用する」をチェックし、タイプに「SaaS_ID」を指定します。

【注意】

  • 「ユーザ識別子(NameID)」としてID以外の属性を指定していると、IIJ IDサービスに対する更新処理でその属性の値が更新される場合があります。ただし、その更新は連携先サービスまで伝搬されないため、IIJ IDサービス側の属性の値が更新されると、連携していたアカウントに接続できなくなります。「ユーザ識別子(NameID)」としている属性の値が更新される場合は、連携先サービス側で紐づく属性(多くの場合、ユーザID)を忘れずに更新してください。
  • 以下の画像のように複数のタイプに「SaaS_ID」が設定されている場合、「ユーザ識別子(NameID)」に「SaaS_ID」を指定すると、サービスマニュアルに記載されているルールに基づいていずれかの単数値だけが採用されます。連携対象のサービスに管理者の意図しないアカウントがSAML連携される危険性があります。対象となる各ユーザにおいて、「ユーザ識別子(NameID)」として指定するタイプが複数個存在しないように注意してください。


【参考】

  • 「属性値関連付け(ユーザ属性)」は、ユーザ単位ではなくSAMLアプリケーション単位でのみ設定できます。
  • 「属性値関連付け(ユーザ属性)」で複数値を持つ属性での指定する方法は以下のとおりです。
    例として、IIJ IDサービスの各ユーザの属性「Entitlements」に以下のように値が設定されています。
    • 連携先サービス側に「属性値関連付け(ユーザ属性)」として属性名が「hogehoge1」、渡したい値が「abc」の場合は、「プライマリの値を使用する」をチェックします。
    • 連携先サービス側に「属性値関連付け(ユーザ属性)」として属性名が「hogehoge1」、渡したい値が「1234」の場合は、「タイプと一致する値を使用する」をチェックし、タイプに「SaaS_Attr1」を指定します。
    • 連携先サービス側に「属性値関連付け(ユーザ属性)」として属性名が「hogehoge1」、渡したい値が「multi1」、「multi2」のように複数の場合は、「タイプと一致する値を使用する」をチェックし、タイプに「SaaS_MultiAttr1」を指定します。


5. 「利用者設定」をクリックします。

6. 「利用者を追加する」をクリックし、アプリケーションにシングルサインオンさせたいグループ及びユーザを指定します。

【参考】

利用者に登録していないユーザにもこのアプリケーションを利用させたい場合は、「アプリケーションへのログイン」の「編集」をクリックしします。

「利用者でないユーザも、アプリケーションへのログインを許可する」を選択し、「変更を適用する」をクリックします。