OTセキュリティブログ

Nozomi Networks GuardianにSAMLでシングルサインオン(SSO)してみた

こんにちは。

Nozomi Networks製品を担当している木村と申します。

今回はActive Directory フェデレーションサービス(ADFS)Guardianを連携して、SSO環境を構築したいと思います。

本件、たまにお問い合わせいただく内容ですので、ご参考になれば幸いです。

ADFSWindows Server 2022のものを使用しました。

ADFSのインストールについて分かりやすいサイトを見つけましたので、以下紹介させていただきます。

https://cloudinfrastructureservices.co.uk/how-to-install-adfs-on-windows-server-2022/

 

  • Guardianの設定

管理>設定のユーザーをクリックして、SAMLタブをクリックします。

Nozomi URL : https://<GuardianIPアドレス> を入力します。

SAMLロール属性キー: http://schemas.microsoft.com/ws/2008/06/identity/claims/role を入力します。

メタデータXML: 以下のURLに接続し、ADFSからダウンロードしたファイルをアップロードします。

https://<ADFSIPアドレス>/FederationMetadata/2007-06/FederationMetadata.xml

 

  • ADFSの設定

証明書利用者信頼の追加を行います。

要求に対応するにチェックを入れて開始をクリックします。

証明書利用者についてのデータをファイルからインポートするにチェックをいれます。

以下のURLに接続し、Guardianから取得したメタデータをアップロードします。

https://<GuardianIP>/saml/metadata

表示された文字列をメモ帳にコピペするなどしてください。

表示名に適当な値を入力して次へをクリックします。

今回はデフォルトのまま次へをクリックします。

次へをクリックします。

閉じるをクリックします。

次に要求発行ポリシーを設定していきます。規則の追加をクリックして以下の規則を設定します。 

グループメンバーシップを要求として送信を選択して次へをクリックします。

今回は、Domain Usersグループに所属するユーザーでログインした場合に、Guardian上でadminsグループの権限を与えるように設定します。

次にLDAP属性を要求として送信を選択して次へをクリックします。

次のように設定します。

最後に、カスタム規則を使用して要求を送信を選んで次へをクリックします。

次のように設定します。

カスタム規則:

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier"]

=> issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress");

次のように設定できたら設定完了です。OKをクリックします。

  • Guardianからログイン

Guardianのログイン画面にはSingle Sign On ボタンが増えています。

Single Sign Onをクリックすると、ADFSの画面が開きます。

Domain Usersに所属するアカウントを入力してサインインをクリックします。

無事Guardianにログインできました。

うまく動作しない場合はWebブラウザのアドオンでSAMLをトレースするツールがあります。切り分けにお勧めです。

https://chrome.google.com/webstore/detail/saml-tracer/mpdajninpobndbfcldcmbpnnbhibjmch

 

  • まとめ

GuardianADFSを使ってSSO環境を構築することができました。

SAMLはクラウドサービスが流行りだしてから、よく使われるようになった印象です。

GuardianのログインもSAMLを使用して一元管理、SSO化してみてはいかがでしょうか。