SaaS

Azure AD B2B に新機能!クロステナントアクセスまとめ!

はじめに

こんにちは、すかんくです。今回も Azure AD B2B に関する記事です。

前回ブログの次回予告では「Azure AD B2B で招待した Google アカウントを使って、社内 SaaS に SSO してみるまで」をお送りするとお伝えしましたが、内容を変更してお届けいたします。

直近の Azure AD B2B に関するアップデートとして、クロステナントアクセスがパブリックプレビューになりました。

本機能を利用すると、前回のブログで注意書きとして記載させていただいた “デバイスやアプリベースの条件付きアクセス適用は非推奨” といった制限事項が一部解消されます。

注意:条件付きアクセスに関しての補足
Azure AD B2B で招待したユーザーに対して、条件付きアクセスによるデバイスやアプリベースの条件付きアクセス適用は非推奨となっています。
外部ユーザーに対して上記のような要件がある場合、Azure AD B2B 機能は利用できませんのでご注意ください。

https://blog.cloudnative.co.jp/10201/

本記事ではクロステナントアクセスの機能概要・構成時の注意点・設定方法について解説したいと思います。

機能概要について

まずは今回の機能更新で出来るようになったことをざっくりまとめると以下になります。

  • Azure AD 間の B2B コラボレーションにおける制御機能の追加
    • 外部の Azure AD グループを利用して、内部のアプリやリソースを許可できるように
    • 内部の Azure AD グループを利用して、外部のアプリやリソースを許可できるように
  • Azure AD 間でセキュリティポリシーの要求結果を共有可能
    • 外部アプリへアクセスする際、内部で MFA 要求を完了していれば、外部ポリシーによる MFA 要求をスキップ
    • 外部アプリへアクセスする際、内部でコンプライアンスポリシーの準拠やAzure AD参加の要求を完了していれば、外部ポリシーによる要求をスキップ

それぞれ解説していきます。

Azure AD 間の B2B コラボレーションにおける制御機能の追加

従来、Azure AD B2B コラボレーションで招待するユーザーの選択や、アプリのアクセス可能といったコントロールは、招待先テナントでのみ可能でした。
しかし実際には招待元テナントの管理者としても、「このグループに所属しているユーザーのみ、外部の Azure AD へ招待されることを許可する」といったコントロールを実施したいという要望があったりします。

例えばこんなケースです。

  • ユーザーがどの外部アプリやリソースへアクセスしているのか把握する必要がある

こういった要望に対してクロステナントアクセスでは、特定のグループ・ユーザーに限って外部アプリへのアクセスを許可する、といった制御が可能になります。
加えて、招待先テナントの管理者としても、招待元のグループと紐づいたアクセス許可が可能となり、画一的な管理基準を設けることが可能になります。

Azure AD 間でセキュリティポリシーの要求結果を共有可能

クロステナントアクセスを利用することで、招待されたユーザーが招待先テナントで条件付きアクセスポリシーの要求を受けた場合、対象となる認証要素の一部を招待元テナントと共有することが可能になりました。
具体的には、以下の要素を招待元テナントから受け取ることが可能です。

  • MFA
  • コンプライアンスポリシー準拠
  • Hybrid Azure AD Join

具体的にどうなるのかの話ですが、これまでは両テナントで MFA を要求するよう条件付きアクセスポリシーが構成されていた場合、各テナント用に MFA をセットアップする必要がありました。

一方、クロステナントアクセスでは、招待元テナントにさえ MFA をセットアップしておけば、招待先テナントで MFA を要求されるということが無くなるということです。

また、これまで利用できなかった [コンプライアンスポリシー準拠] や [Hybrid Azure AD Join] といったデバイスベースの要求についても、招待元の要求結果を受け取るという方法で実現可能になります。

結果として、エンドユーザーの MFA 体験は向上し、招待先テナントとしてもデバイスベースの条件付きアクセスポリシーを適用することによるセキュリティレベルの向上が見込めます。

クロステナントの設定手順

ここまでクロステナントの機能範囲について確認してきました。
以降では、実際の設定手順について触れていこうと思います。

前提条件

  • テナントに Azure AD Premium P1/P2 ライセンスが必要
  • 設定には [セキュリティ管理者] or [グローバル管理者権限] が必要

事前準備(必要に応じて)

  • 連携先 Azure AD テナント ID 取得
  • 連携先 Azure AD テナントの対象アプリ ID 取得
  • 連携先 Azure AD テナントの対象グループorユーザー ID 取得

デフォルトルールの設定

クロステナントを利用しない外部テナントに対して適用する、デフォルトルールを設定します。

※ 本番環境で設定を変更する際は、Azure AD B2B ゲストユの有無や連携アプリについて、事業部門へ予めヒアリングされることを推奨

Azure ポータルへアクセス。
② [Azure Active Directory] > [External Identities] > [クロス テナント アクセス設定 (プレビュー)] をクリック。

③ [既定の設定] タブに移動し、[受信の既定値を編集] または [送信の既定値を編集] をクリック。

④ 設定を変更したら、[保存] をクリック。
⑤ 設定が反映されたことを確認する。

連携先テナントの追加

デフォルトルールの設定が完了したら、続いて連携先の Azure AD テナントを追加します。
追加されたテナント毎に、個別ルールを構成することが可能となります。

① [組織の設定] タブに移動し、[組織の追加] をクリック。

② 連携先 Azure AD テナント ID を入力し、[追加] をクリック。

③ 連携先 Azure AD テナントが正常に設定されたことを確認。
※ 組織の追加直後はデフォルトルールを継承している。

受信アクセス設定の追加

追加した組織テナント毎に、追加の受信アクセス設定を構成します。
※今回は例として、連携元 Azure AD テナントに存在するグループを指定して、アプリケーションの利用を許可する場合の手順を記載。

① 対象組織の [受信アクセス] > [既定値を継承] をクリック。

② [B2B コラボレーション] > [設定のカスタマイズ] を選択。
③ [外部のユーザーとグループ] タブで、[外部のユーザーとグループ] を選択し、[外部のユーザーとグループを追加] をクリック。

④ 連携先テナントの対象グループまたはユーザー ID を入力し、ID 種別を選択する。
⑤ 複数グループ登録する場合は [追加] をクリックし、必要回数だけ 手順④ を繰り返す。
⑥ 内容に誤りが無いことを確認し、[送信] をクリック。

⑦ [アプリケーション] タブにて、[アプリケーションの選択] を選択し、[他のアプリケーションを追加する] をクリック。
※設定内容に関する注意事項は [展開前の考慮事項について] に記載します。

⑧ 表示されるアプリケーション一覧から、対象となるアプリを検索して選択。
⑨ 複数アプリ登録する場合、必要回数だけ 手順⑧ を繰り返す。
⑩ 内容に誤りが無いことを確認し、[選択] をクリック。

⑪ すべての設定内容に誤りが無いことを確認し、[保存] をクリック。

<連携元 Azure AD テナントの多要素認証・コンプライアンスポリシー準拠・Hybrid Azure AD Join を信頼する場合>
⑫ [信頼の設定] タブに移動し、[設定のカスタマイズ] を選択。
⑬ 必要項目にチェックを入れ、[保存] をクリック。

送信アクセス設定の追加

追加した組織テナント毎に、追加の送信アクセス設定を構成します。
※ 今回は例として、招待可能なグループ及びアプリケーションを指定する場合の手順について記載。
※ ほとんどのステップが [受信アクセス設定の追加] と同じなため、ポイントだけ紹介します。

<[外部アプリケーションの選択] > [他のアプリケーションを追加する] を選択した場合、連携先テナントに存在する [アプリ ID] の入力を求められます。>

連携先テナントの削除

不要となった連携先テナントは、都度削除するようにしましょう。
① [組織の設定] タブにて、[削除] マークをクリック。

② 削除確認のポップアップが表示されるため、[OK] をクリック。

展開前の考慮事項について

クロステナントアクセスを展開される場合、事前考慮いただきたい項目をまとめます。

既に Azure AD B2B を利用している組織への影響

既に Azure AD B2B を利用されている組織の方々は、クロステナントアクセスを展開することにより、既存のゲストユーザーに対しても影響が生じます。

例)
  • デフォルトの受信アクセスポリシーですべてのユーザー及びアプリへのアクセスをブロックする場合、既に参加済みのゲストユーザーについても、以降のアクセスがブロックされます。

Azure AD B2B を利用中の組織間や事業部門とコミュニケーションを取りつつ、適切な展開方法やスケジュール検討を推奨いたします。

利用有無の確認には、[Azure Active Directory] > [ユーザー] > [フィルターの追加] から、[ユーザータイプ:ゲスト] でフィルターを適用します。

すべてのアプリをブロックした場合の影響

すべてのアプリケーションに対するアクセスをブロックした場合、他の Microsoft サービスへの影響についても注意が必要です。

例)
  • Microsoft Information Protection で暗号化されたメールやファイルの外部参照

組織内でのサービス利用状況によっては、ユーザー・グループベースでのコントロールを推奨します。

承認結果の共有における留意点

デバイスベースの条件付きアクセスポリシーを適用・他組織での承認結果を信頼するにあたり、セキュリティ観点での留意事項として以下が挙げられます。

  • [コンプライアンスポリシー準拠] は “自社のポリシーに準拠している” かは判別されない
  • [Hybrid Azure AD Join] は “自社で管理している” ことにはならない

あくまで「招待元テナントにおける、同要素の承認結果を、信頼する」ということになります。

例えば、社内のセキュリティポリシーとして、「自社内で管理されているデバイスでアクセスすること」といった条件が設定されている場合があります。

この場合、クロステナントアクセスはその機能上、上記ルールの担保には適用不可であるという点をご認識いただければと思います。

おわりに

今回は Azure AD B2B へ新たに追加された、クロステナントアクセス機能についてご紹介しました。

これまでユーザーの MFA 体験や、アプリへの権限管理の手間、デバイスベースのアクセス制御といった問題から Azure AD B2B の利用が難しかった企業様も、改めてご利用を検討されてみてはいかがでしょうか。

【次回予告】
今回スキップした「Azure AD B2B で招待した Google アカウントを使って、社内 SaaS に SSO してみるまで」をお送りいたします。

ではまた!

参考

すかんく

2022/1 入社、Identity チームのすかんくと申します。
ブログでは IdP 関連の機能紹介を中心に記載していこうと思います。
好きな漫画はアイシールド21・ハイキュー・ベイビーステップです。