Azure ADのゲストユーザー招待って便利。SharePointやTeamsでゲストユーザーを招待するケースはやっぱり便利。先方がOffice365を使ってる場合だとアクセス制限かけてたりアカウント管理をしっかりしているはずなので、ある程度信頼して招待できる。
ただ、やっぱり先方がOffice365使ってなくてMicrosoftアカウントで招待しているケースでは、そもそもアクセス制限かかってない。Office365使ってるといってもアクセス制限かけてないんじゃないか・・というケースがあったりする。先方に強化してよ、とも言えないし、自社で守るしかない。
じゃぁ、どうややって制御するの、ということで条件付きアクセス。ゲストユーザーにも適用できるのでIPアドレスでアクセス元を制御するというシナリオでまとめてみる。
流れはこんなかんじ
・ライセンス
・ネームドロケーションの登録
・条件付きアクセスの構成
ライセンス
構成するにも、ライセンスは必要。とはいってもゲストユーザーのために新たに調達する必要はなく、Azure AD P1ライセンスが社内ユーザー向けにあればいい。Azure AD BtoBで、ゲストユーザーがサインイン履歴が残らない場合の対応でもかいたけど、テナント内で保有しているAzure AD P1あるいはP2の数の、5倍までのゲストにも適用できる。ライセンスを200持ってたら、ゲストユーザー1000まで可。
Intune使ってるならEMS E3を持っているだろうし、M365E3持ってる組織なら包含してる。
ネームドロケーションの登録
あとで使う条件付きアクセスでは、IPアドレスはあらかじめ「ネームドロケーション」に登録しておく必要がある。
Azure Active Directory→条件付きアクセス→ネームドロケーションから登録する。
「信頼できる場所としてマークする」はオフにする(自社じゃないからね)
条件付きアクセスの構成
「先ほど登録したIP以外は、ブロックする」ことでアクセス元を制限する。
条件付きアクセスで新規にポリシーを作成し、対象のゲストユーザーを割り当てる。
ポリシーの「条件」→「場所」にて、対象外として先ほど作成した場所を設定する。
アプリに、対象のアプリを設定して、終了。
補足
設定したアプリのみ、この条件付きアクセスが適用される。
注意しないといけないのは、アプリAは使わせたいけど、アプリBはダメ、というようなケースではアプリA用のルールは作成しつつ、アプリA以外用のルールで「全部ブロック」しておく必要がある。ネームドロケーションではIPは必須入力なので、自社IPいれとくとか、イントラ内のIPを設定するなどして回避。
SaaSのSSOをAzureADに寄せている場合、ゲストユーザーはOffice365だけ出ない場合も出てくる。
また、社内アカウントだけど外部の方に使わせるシナリオだと、社内IP以外からのアクセスになってしまう。AzureADPライセンスの割り当ては必要だけど、同じ方法が使えるので、ステージドロールアウトと組み合わせればより安全な認証制御を行るんじゃないだろうか。