
皆さん、こんにちは。
SB C&Sでネットワーク/セキュリティ関連のプリセールスを担当している 大東です。
前回は、ZscalerのSecureWebGateway製品である「ZIA」とAzureADでのSAML+SCIM連携についてご紹介しました。
今回は、ZscalerのPrivateAccess製品である「ZPA」とAzureADでのSAML+SCIM連携の手順についてご紹介します。
ZPAのユーザー認証は、SAML連携のみとなるため必ず事前にAzureADやOktaなどのIDaaS基盤が必要となります。
改めて、登場人物の簡単な紹介となります。
■Zscaler(ZIA/ZPA)
Zscaler社が提供するクラウド上でさまざまなセキュリティ製品群。
ZIAはSWG(Secure Web Gateway)として、企業からのすべてのインターネット接続をプロキシとして仲介し、NGAVやIPS、URLフィルタリング、CASB、DLP、ファイアウォールなどの機能を提供します。
ZPAは、企業内アプリケーションにセキュアに接続するためのVPNに変わる仕組み。従来のVPNのようにインターネット上にVPN接続用のグローバルアドレスやポートを公開することなく、Zscalerクラウド側でユーザーと企業内アプリケーションを接続するため、グローバルIPを公開する必要がなくインターネット上から完全にアプリケーションを隠すことができます。
■Azure AD
Microsoft社が提供するAzureクラウド上のActiveDirectoryサービス。単体での動作や既存のオンプレミスのActiveDirectoryともADConnectなどで連携も可能。Microsoft 365の契約があるお客様であれば、無償で利用可能です。(一部、上位プランは有償)
また、さまざまなクラウドアプリケーションとのSAML連携にも対応しており、IDaaSとしてSSO(シングルサインオン)の基盤としても使われています。
■SAML
異なるクラウドサービス間でユーザー認証を行うための規格であり、SSOにも利用されます。
■SCIM
IDプロビジョニング(提供・同期)プロトコルであり、複数ドメイン間でのユーザー情報の整合性を取る仕組みです。AzureADやOktaといったIDaaS基盤には実装されております。例えば、AzureAD側でユーザーの追加/変更/削除などをした際に、SCIMに対応したクラウドサービス側にも自動的に連携されるため、変更箇所が一つで済むようになり、アカウント対応の工数が格段に向上します。
■Zscaler Client Connector
Zscalerに接続するためのクライアントソフトになります。Zscalerの管理画面から「Zscaler Client Connector Portal」にアクセスすることでダウンロードできます。
このソフトでZIAおよびZPA、両方にログインすることができユーザーは特に意識することなくZsclaer経由でのアクセスやプライベートアプリケーションへのアクセスが可能となります。
前提条件
・AzureADで利用しているドメイン名をZscaler側に申請し、ZIA、ZPA側でドメインを追加しておく必要があります。
検証環境
1.Zscaler(ZPA) IdP連携
■ZPA側の設定
ZPAにログインし、「Administration」>「IdP Configuration 」をクリックします。
名前、ドメインなどを設定します。
SAML連携用のメタデータをダウンロードします。
また、「Service Provider URL」と「Service Provider Entity ID」のURLをテキストファイル等にコピーします。
コピーしたら、「Pause」ボタンを押して、ZPA側の設定を一時中断します。
■Azure AD側の設定
AzureADでのSAML連携設定を行います。
Azureの管理画面に移動して、ZPAのアプリケーションを追加します。
AzureAD管理画面から「エンタープライズアプリケーション」をクリックします。
「新しいアプリケーション」をクリックし、検索欄に「zscaler」と入力し、「ZPA」を見つけて追加します。
AzureAD管理画面でユーザー追加を行います。
ユーザーとグループの割り当てをクリックします。
「ユーザーまたはグループの追加」をクリックし、認証に利用するユーザーやグループを追加します。
※Zscalerにアクセスさせるユーザーグループを作成し、AD側でユーザーを追加する運用であればグループのみでもOK
追加するユーザーとグループ数を確認し、割り当てをクリックします。
ユーザーとグループが追加されていることを確認します。
AzureAD管理画面からSAML連携を実施
左メニューから「シングルサインオン」をクリックし、「SAML」をクリックします。
ZPAからDLしたメタデータをアップロードします。
識別子にコピーした「Service Provider Entity ID」、応答URLに「Service Provider URL」が入っていることを確認します
応答URL欄にあるURLをコピーし、「サインオンURL」に張り付け、画面上部にある「保存」をクリックします。
※テストの項目が出ますが、現状ではまだ設定が終わっていないため、「いいえ」をクリックします。
AzureAD側の「フェデレーションメタデータXML」をダウンロードします。
■Zscaler(ZPA)側の設定2
ZPAに戻り、IdP設定を再開するために、Action項目にある再生ボタンのようなマークをクリックします。
AzureADからダウンロードしたXML形式のメタデータをアップロードし、「Save」します。
※証明書やSingle Sin-On URL、IdP Entity IDなどが自動的に入力されます。
ZPA側でのSCIM連携設定
保存したばかりのIdP設定を編集するため、Action項目の「鉛筆」マークをクリックします。
「SCIM Sync」と「SCIM Attribute for Policy」を"Enable"にします。
「Generate New Token」をクリックしてトークンを作成し、「SCIM Service Provider Endpoint」と「Bearer Token」をコピーします。
※トークンはここでしか表示されません。保存をクリックして、再度編集を押してもトークンは表示されません。もしコピーし忘れた場合は再度「Generate New Token」をクリックして、再作成してください。
■Azure AD側の設定2
Zscaler側のSAML連携/SCIM設定は完了したため、次はAzureAD側でSCIM連携を行います。
Azure AD管理画面に行き、「エンタープライズアプリケーション」から[Zscaler]を選択します。
メニューから[プロビジョニング]をクリックし、作業開始をクリックします。
プロビジョニングモードは「自動」を選択し、ZIAからコピーしたベースURLとトークンを貼り付け、テスト接続をクリックします。
プロビジョニングが成功したら、画面上部の保存をクリックします。
設定が完了したら、実際にプロビジョニングを実施してAzureADとZPA間で同期を行います。
プロビジョニングが終わると以降はAzureADでユーザーなどを追加し、Zscalerのエンタープライズアプリケーション側で許可するユーザーやグループを追加することでZPA側にも連携されます。
■Zscaler(ZPA)側の設定3
ZPA画面に戻り、ユーザー連携を確認します。
「Administration」>「SCIM Users」をクリックすると、AzureADから同期されたユーザー名などが確認できます。
ZPAでのプライベートアプリケーションアクセスの際に、SAML連携されたAzureAD側のユーザー名、グループ名、所属先、メールアドレスをなどを条件として設定することができます。
そのSAML連携用のアトリビュート(属性情報)をインポートします。
「Administration」>「IdP Configuration 」をクリックし、作成したIdP設定を展開してImport SAL Attributesにある「Import」をクリックします。
ユーザーのログイン画面が表示されますので、登録したユーザーいずれかのアカウントでログインすると、SAML属性情報が表示されますので、Saveをクリックします。
※それぞれの名前が長いので、共通する名前部分は削除して短くしたり、分かりやすい名前に変更しても問題ありません。
このアトリビュートを使ったポリシー設定については、別の記事で記載予定です。
2.Zscaler Client Connectorからの接続
ZPAの管理画面から「Zscaler Client Connector Portal」にアクセスし、Zscaler Client Connectorをダウンロードします。
クライアントパソコンに「Zscaler Client Connector」をインストールして、AzureADに登録されているユーザー名を入力します。
Zscaler側で、このアカウントがSAML連携されていることが分かると、今度はAzureADのログイン画面に遷移しますので、再度メールアドレスを入力し、パスワードを入力します。
認証が正常に処理されると、Zscaler(ZPA)に接続されます。
上記にて、2回同じメールアドレスを入力しましたが、煩わしいと思った方もいらっしゃるかと思います。
接続するパソコンがAzureADドメイン管理下でないデバイスの場合は、ZscalerへのグインとAzureAD(ZIA、ZPA)への認証で最大3回聞かれる場合もあります。
しかし、AzureADドメインにパソコンを参加させ、Zscalerと同じアカウントでログインした場合は、Zscalerへのログイン1回で対応が可能です。
ログイン後、社内テストページにアクセスすることができました。
※Appendix※
ZCCでログインした場合に、ZPAの項目が表示されてない場合があります。
この場合は、Client ConnectorPortalからZPAをZCCで利用できるように設定変更をしておく必要があります。
手順は下記のとおりです。
1.ZPA管理画面からClient Conector Portalをクリックします。
2.画面上部の「Administration」をクリックします。
3.Zscaler Service Entitlement でZPAが有効になっていることを確認します。有効になっていない場合は有効にしたうえで、再度ZCCでログインしてみてください。
まとめ
いかがでしたでしょうか。
ZIAとZPA両方とも同じAzureADを利用してSAML/SCIM連携をすることで、ユーザーとしても管理者側としても格段に利便性は向上します。
またZIAの時にも述べましたが、多くのSaaS製品を利用している環境では、SAMLによるユーザーのシングルサインオンは必須になってくるでしょう。
ゼロトラスト対応を考える際には、まずAzureADなどのIDaaS環境を整えて、スムーズに移行できるようにしていくことも大事かと思います。
既存で「Microsoft 365」を契約しているお客様は、無償でAure ADがご利用いただけますので、ゼロトラスト対応への一歩としてAzureAD環境への移行も視野に入れてみてはいかがでしょうか?
SB C&Sでは案件のプリセールスや案件同行、ハンズオンセミナーなどさまざまな対応を行っておりますので、お気軽にお問い合わせください。
Zscaler(ZIA)×AzureADでのIDaaS(SAML/SCIM)接続手順
著者紹介

SB C&S株式会社
ICT事業本部 技術本部 第3技術部 2課
大東 智裕 - Tomohiro Daito -
SIer、エンドユーザー情シス/マーケなどを経て、2022年より現職。
九州・中国地区でネットワーク/セキュリティ/ゼロトラストを中心としたプリセールスエンジニアを担当。