VMware Workspace ONE

【参考】

2019年08月26日時点での情報で掲載しています。

「VMware Workspace ONE」との認証連携を設定します。

【注意】

本手順では、SAML Just In Provisioningを用いた連携を行います。この為、VMware Workspace ONEのユーザディレクトリはジャストインタイム ディレクトリを使用します。
また、VMware Workspace ONEでの連携ユーザは、IIJ IDサービスからの認証連携によって、ユーザの作成、及び変更が行われます。
連携作業中にVMware Workspace ONEにログインできなくなった場合は、以下のURLからVMware Workspace ONEの管理者でログインしてください。

  • https://{FQDN名}/SAAS/auth/0
    例)https://example.vmwareidentity.asia/SAAS/auth/0

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

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

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

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

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

項目内容備考
アプリケーション名例)VMware Workspace ONE必須
アプリケーションの説明例)ID管理を行うVMware Identity ManagerとエンタープライズモビリティマネジメントのAirWatchを統合した製品任意
アプリケーションロゴ(ファイルアップロード)任意
IDプロバイダの選択「アプリケーション専用のエンティティIDを利用」を選択必須
2. IIJ IDサービスのIDプロバイダ情報を確認する

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

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

3. 「ダウンロードする」をクリックし、IDプロバイダのメタデータをダウンロードします。

3. VMware Workspace ONEにIDプロバイダ情報を登録する

1. VMware Workspace ONEに管理者としてログインします。

2. ツールバーのアカウント名をクリックし、プルダウンメニューの「管理コンソール」をクリックします。

3. 「IDとアクセス管理」タブをクリックします。

【参考】

手順3-8で作成されるジャストインタイム ディレクトリ内で扱える属性を独自に追加したい場合には、以下の手順を行います。
本手順は任意作業となりますので、必要に応じて設定してください。

1. 「セットアップ」をクリックします。

2. 「ユーザー属性」をクリックします。

3. 「使用するその他の属性を追加」で追加したい属性名を入力し、「保存」をクリックします。

4. 「管理」をクリックします。

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

5. 「IDプロバイダを追加」の「サードパーティIDプロバイダを作成」をクリックします。

6. 以下のとおり設定し、「IDプロバイダ メタデータの処理」をクリックします。

項目内容備考
IDプロバイダ名例)IIJ IDサービス任意
SAMLメタデータ

手順2-3でダウンロードしたIDプロバイダのメタデータのファイルの中身を編集せずに貼り付けます


7. 以下のとおり設定します。

項目内容
SAML 認証要求のバインドHTTPリダイレクト
ユーザーの識別方法NameID 要素
SAML 応答からの名前 ID 形式のマッピング(そのまま)
SAML 要求の名前 ID ポリシー(オプション)

urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified

8. 「ジャストインタイムのユーザープロビジョニング」の「有効」をチェックし、以下のとおり設定します。

項目内容備考
ディレクトリ名例)IIJ IDサービス
ドメイン例)example.jpこのドメインは、IIJ IDサービスのドメイン名には依存しません。VMware Workspace ONE内での管理上設定するものとなります。
IIJ IDサービスのユーザIDが「xxx@example.jp」であっても、ここで記載するドメインと連動する必要はないので、「example.com」のドメインを設定することもできます。

9. 以下のとおり設定し、「追加」をクリックします。

項目内容備考
ネットワーク例)すべての範囲お客様の利用状況に合わせて設定します
認証方法認証方法例)SAML
SAMLコンテキスト

urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport

類似した項目が多いので間違えずに選択してください

10. 作成した「IDプロバイダ」をクリックします。

11. 「SAML 署名付き証明書」の「サービスプロバイダ(SP)メタデータ」をクリックし、メタデータをダウンロードします。

12. ダウンロードした「サービスプロバイダ(SP)メタデータ」を以下のとおり編集します。

変更箇所

<md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat>
<md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat>
<md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:persistent</md:NameIDFormat>
<md:NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</md:NameIDFormat>
<md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:x509SubjectName</md:NameIDFormat>

変更後<md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat>

13. 「ポリシー」をクリックします。

14. IIJ IDサービスで認証を要求する「ポリシー」を作成、または編集します。

15. IIJ IDサービスで認証を要求する「ポリシー」の認証方式として、手順3-9で入力した認証方法を選択し、「保存」をクリックします。

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

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

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

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

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

項目内容備考
SAML基本情報





SPのメタデータをアップロードする

「SPのメタデータをアップロードする」をチェック
SPメタデータ

手順3-12で入手したSPメタデータをアップロード


検証後の遷移先(RelayState)(空欄)
アプリケーションのトップページURL

(空欄)


アサーションの署名アルゴリズム例)
RSA-SHA256

ユーザ識別子(NameID)の指定関連付けるユーザ属性例)
ID

VMware Workspace ONEの各ユーザの値が格納されている属性を指定します

属性値関連付け(ユーザ属性)userName例)
ID

VMware Workspace ONE側の必須属性です

VMware Workspace ONEの「ユーザID」の値が格納されている属性を指定します

email

例)
通知先メールアドレス

プライマリの値を使用する

VMware Workspace ONE側の必須属性です

VMware Workspace ONEの「メールアドレス」の値が格納されている属性を指定します

userPrincipalName

例)
ID

VMware Workspace ONE側の必須属性です

VMware Workspace ONEの「userPrincipalName」の値が格納されている属性を指定します

ExternalId例)
ID

ExternalIdが連携されないと、VMware Workspace ONEでの再ログインに失敗します

VMware Workspace ONEとIIJ IDサービスを一意に紐付ける値が格納されている属性を指定します

first_name

例)

VMware Workspace ONE側の必須属性です

VMware Workspace ONEの「名」の値が格納されている属性を指定します

last_name例)

VMware Workspace ONE側の必須属性です

VMware Workspace ONEの「姓」の値が格納されている属性を指定します

domain

例)
Entitlements

タイプと一致する値を使用する
タイプ: domain

手順3-8で複数のドメインを指定していた場合に、必須の属性です

domainの値は、手順3-8で指定したいずれかのドメイン名が設定されていることが前提となります。
手順3-8でドメインを1つしか指定していない場合は、domainを追加する必要はありません

例)
objectGUID
例)
アプリケーション連携ID

手順3-3の時点で追加属性、または、任意属性で連携したい属性があれば追加します
追加の必要がなければ本項目は必要はありません

【参考】

「アサーションの署名アルゴリズム」は連携先サービス側で指定などがない場合、デフォルト値の「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」を指定します。

【参考】

VMware Workspace ONEでは、デフォルトで以下のユーザ属性が必須属性です。そのため、これらの属性と連携するにあたってIIJ IDサービス側の各ユーザの該当属性には適切な値が設定されている必要があります。

  • userName
  • userPrincipalName
  • email
  • firstName
  • lastName

【注意】

連携先サービスにてSAML Just-In-Provisioning機能が有効な場合、以下の点についてご注意ください。

  • 連携先サービスのSAMLで認証するキーにIIJ IDサービスの「ID」以外の属性を指定している場合、IIJ IDサービス上では属性情報の変更が可能なため、連携先サービスでは認証時にこれまでとは別ユーザで接続されたと認識されます。そのため、新規ユーザとして作成処理が行われ、既存ユーザのリネーム処理が行われません。連携先サービスのSAMLで認証するキーとして指定する属性の値の変更については十分ご注意ください。
  • 属性値関連付け(ユーザ属性)及び属性値関連付け(所属グループ名)を利用している場合、ユーザが連携先サービスにSAML連携した後にIIJ IDサービス側の該当属性を変更するると、連携先サービスでその該当属性に対しての更新処理が発生します。IIJ IDサービスと連携先サービスの双方でID情報を管理している場合は、IIJ IDサービスと連携先サービス間で該当属性同士の不整合が起きないように管理してください。
  • ユーザの削除のトリガーは存在しません。定期的に管理者が手動にて連携先サービス上の該当ユーザの削除処理を行っていただく必要があります。

これらは連携先サービスで提供するSAML Just-In-Provisioning機能の仕様のため、IIJ IDサービスでの制限ではありません。

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

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

【参考】

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

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