Palo Alto Networks GlobalProtect
【参考】
2020年02月29日時点での情報で掲載しています。
「Palo Alto Networks GlobalProtect」との認証連携を設定します。
【注意】
- Palo Alto Networks GlobalProtectがSAML認証可能なバージョン等の制約については販売元にお問合わせください。
- 本手順はPAN-OS 8.1で確認した手順となります。
- Palo Alto Networks GlobalProtectはNTPなどを活用し、時刻がずれないように運用してください。
- 本手順にはSAML連携に関連しない項目については記載していません。
- Palo Alto Networks GlobalProtectがSAMLで認証するキーは「ユーザID」です。
- IIJ IDサービス内の各ユーザ共通のユーザ属性にPalo Alto Networks GlobalProtectの「ユーザID」と同一の値を保持しておく必要があります。
1. IIJ IDサービスにSAMLアプリケーションを登録する
1. 「アプリケーション」の「アプリケーションの管理」 をクリックします。
2. 「アプリケーションを追加する」をクリックし、「カスタムアプリケーションを追加する」をクリックします。
3. 「SAMLアプリケーション」を選択し、「次に進む」をクリックします。
4. アプリケーション情報を入力し、「アプリケーションを追加する」をクリックします。
項目 | 内容 | 備考 |
---|---|---|
アプリケーション名 | 例)Palo Alto Networks GlobalProtect | 必須 |
アプリケーションの説明 | 例)ユーザー、デバイス、使用場所に関係なく、セキュリティを実現 | 任意 |
アプリケーションロゴ | (ファイルアップロード) | 任意 |
IDプロバイダの選択 | 「アプリケーション専用のエンティティIDを利用」を選択 | 必須 |
2. IIJ IDサービスのIDプロバイダ情報を確認する
1. 作成されたアプリケーションの「編集する」をクリックします。
2. 「IDプロバイダ情報」をクリックします。
3.「メタデータ」の箇所にある「ダウンロードする」をクリックし、IDプロバイダのメタデータをダウンロードします。
3. Palo Alto Networks GlobalProtectにIDプロバイダ情報を登録する
1. Palo Alto Networks GlobalProtectの管理者コンソールに管理者としてログインします。
2. 上部タブの「Device」をクリックします。
3. 左ペインの「Server Profiles」の「SAML Identity Provider」をクリックします。
4. 右ペイン下部の「Import」をクリックします。
5. 以下のとおり設定し、「OK」をクリックします。
項目 | 内容 | 備考 |
---|---|---|
Profile Name | 例)IIJID_Profile | 任意の文字列 |
Identity Provider Metadata | 手順2-3でダウンロードしたIDプロバイダのメタデータをアップロード | |
Validate Identity Provider Certificate | チェックを外す | |
Validate Metadata Signature | チェックを外す | |
Maximum Clock Skew (sec) | 60 | Palo Alto Networks GlobalProtect側の時刻が大きくズレる可能性がある場合には、この値を大きくしてください |
6. 左ペインより、「Authentication Profile」をクリックします。
7. 右ペイン下部の「Add」をクリックします。
8. 以下のとおり設定し、「Advanced」のタブをクリックします。
項目 | 内容 | 備考 |
---|---|---|
Name | 例)SAML_Profile | 任意の文字列 |
Type | 「SAML」を選択 | |
Identity Provider Metadata | 手順3-4の「Profile Name」で入力した文字列を選択 | |
Certificate for Signing Requests | 「None」を選択 | |
Enable Single Logout | チェックを外す | |
Certificate Profile | 「None」を選択 | |
Username Attribute | username | |
User Group Attribute | (空欄) | |
Admin Role Attribute | (空欄) | |
Access Domain Attribute | (空欄) |
9. 「Add」をクリックし、対象アカウントを選択します。「OK」をクリックします。
10. 上部タブの「Network」をクリックします。
11. 左ペインの「GlobalProtect」の「Portals」をクリックします。
12. 右ペイン下部の「Add」をクリックします。
13. 「General」タブにてご利用の環境に合わせて設定し、「Authentication」タブをクリックします。
14. 「SSL/TLS Service Profile」にてご利用の環境に合わせProfileを選択し、「Client Authentication」の「Add」をクリックします。
15. 以下のとおり設定し、「OK」をクリックします。
項目 | 内容 | 備考 |
---|---|---|
Name | 例)GP_Portal_SAML_Auth | 任意の文字列 |
OS | 任意 | 対象となるOSを選択してください |
Authentication Profile | 手順3-8の「Name」で入力した文字列を選択 | |
Username Label | Username | 任意の文字列 |
Password Label | Password | 任意の文字列 |
Authentication Message | 例)Login through IIJ ID | 任意の文字列 デフォルト値をそのまま使用することもできます |
16. その他のタブについては、ご利用の環境に合わせて設定し、「OK」をクリックします。
17. 左ペインの「GlobalProtect」の「Gateways」をクリックします。
18. 右ペイン下部の「Add」をクリックします。
19. 「General」タブにてご利用の環境に合わせて設定し、「Authentication」タブをクリックします。
20. 「SSL/TLS Service Profile」にて環境に合わせてProfileを選択し、「Client Authentication」の「Add」をクリックします。
21. 以下のとおり設定し、「OK」をクリックします。
項目 | 内容 | 備考 |
---|---|---|
Name | 例)GP_Portal_SAML_Auth | 任意の文字列 |
OS | 任意 | 対象となるOSを選択してください |
Authentication Profile | 手順3-7の「Name」で入力した文字列を選択 | |
Username Label | Username | 任意の文字列 |
Password Label | Password | 任意の文字列 |
Authentication Message | 例)Login through IIJ ID | 任意の文字列 |
22. その他のタブについては、ご利用の環境に合わせて設定し、「OK」をクリックします。
23. 上部右にあるメニューの「Commit」をクリックします。
24. 「Commit All Changes」を選択し、「Commit」をクリックします。
25. 内容を確認し、「Close」をクリックします。
26. 上部タブの「Device」をクリックします。
27. 左ペインの「Authentication Profile」をクリックします。
28. 手順3-8にて作成したAuthentication Profileのエントリーで「Authentication」カラムの「Metadata」をクリックします。
29. 「Service」にて「global-protect」を選択します。
30. 「Virtual System」をご利用の環境に合わせて選択します。
31. 「IP or Hostname」にて使用するIPアドレスを選択し、「OK」をクリックします。SPのメタデータを取得します。
32. 取得したSPのメタデータを編集し、IPアドレス(entityID、Locationの2箇所)をすべてクライアントが到達可能なFQDNに書き換えて保存します。
4. IIJ IDサービスのSAMLアプリケーションを設定する
1. 「アプリケーション」の「アプリケーションの管理」 をクリックします。
2. アプリケーションの「編集する」をクリックします。
3. 「フェデレーション設定」をクリックします。
4. 以下のとおり設定し、「変更を適用する」をクリックします。
項目 | 内容 | 備考 | ||
---|---|---|---|---|
SAML基本情報 | SPのメタデータをアップロードする | 「SPのメタデータをアップロードする」をチェック | ||
SPメタデータ | 手順3-32で入手したSPメタデータをアップロード | |||
検証後の遷移先(RelayState) | (空欄) | |||
アプリケーションのトップページURL | Palo Alto Networks GlobalProtectのURL | 例えば下記になります https://<Palo Alto Networks GlobalProtectのサイトのFQDN>:443/ | ||
アサーションの署名アルゴリズム | 例) | |||
ユーザ識別子(NameID)の指定 | 関連付けるユーザ属性 | 例) タイプ: PaloAlto_GP_ID | Palo Alto Networks GlobalProtectの「ユーザID」の値が格納されている属性を指定します | |
属性値関連付け(ユーザ属性) | username | 例) タイプ: PaloAlto_GP_ID | Palo Alto Networks GlobalProtectの「ユーザID」の値が格納されている属性を指定します |
【参考】
「アサーションの署名アルゴリズム」は連携先サービス側で指定などがない場合、デフォルト値の「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)」として渡す値が「iij-jiro@iij.ad.jp」の場合は、「プライマリの値を使用する」をチェックします。
【注意】
- 「ユーザ識別子(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」を指定します。
- 連携先サービス側に「属性値関連付け(ユーザ属性)」として属性名が「hogehoge1」、渡したい値が「abc」の場合は、「プライマリの値を使用する」をチェックします。
5. 「利用者設定」をクリックします。
6. 「利用者を追加する」をクリックし、アプリケーションにシングルサインオンさせたいグループ及びユーザを指定します。
【参考】
利用者に登録していないユーザにもこのアプリケーションを利用させたい場合は、「アプリケーションへのログイン」の「編集」をクリックしします。
「利用者でないユーザも、アプリケーションへのログインを許可する」を選択し、「変更を適用する」をクリックします。