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 Attributeusername
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 LabelUsername

任意の文字列
デフォルト値をそのまま使用することもできます

Password LabelPassword

任意の文字列
デフォルト値をそのまま使用することもできます

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 LabelUsername

任意の文字列
デフォルト値をそのまま使用することもできます

Password LabelPassword

任意の文字列
デフォルト値をそのまま使用することもできます

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/

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

例)
RSA-SHA256



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

関連付けるユーザ属性

例)
Entitlements
タイプと一致する値を使用する

タイプ: PaloAlto_GP_ID

Palo Alto Networks GlobalProtectの「ユーザID」の値が格納されている属性を指定します

属性値関連付け(ユーザ属性)username

例)
Entitlements
タイプと一致する値を使用する

タイプ: 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)」として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. 「利用者を追加する」をクリックし、アプリケーションにシングルサインオンさせたいグループ及びユーザを指定します。

【参考】

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

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