Azureの小ネタ (改)

~Azureネタを中心に、色々とその他の技術的なことなどを~

Easy Auth からグループのクレームを取得する

なんとなく続きます。

/.auth/me を呼び出すと自身のクレームが取得できることは前回に言及したと思いますが、この中には自身が属するグループの情報(クレーム)は含まれていません。Easy Authに限った話ではないのですが。

グループのクレームを取得する

Easy Authで設定すると、AADにアプリケーションが登録されまるので、このマニュフェストファイルを修正する必要があります。

マニュフェストを編集すると、groupMembershipClaims という項目がありますが、既定ではnullになっています。

f:id:StateMachine:20180712203113p:plain:w400

取り得る値としては、null/All/SecurityGroup なのですが、詳細は Azure AD でサポートされているさまざまなトークンとクレームの種類について | Microsoft Docs を参照してください。

引用すると以下の通りです。

アプリケーション マニフェストの ”groupMembershipClaims” プロパティを介して構成されます。 値が null の場合はすべてのグループが除外され、値が ”SecurityGroup” の場合は Active Directory セキュリティ グループのメンバーシップのみが含まれ、値が ”All” の場合はセキュリティ グループと Office 365 配布リストの両方が含まれます。

再度サインイン後に、/.auth/me をアクセスするとグループのクレームが取得できます。

{
typ: "groups",
val: "912a6e53-2690-4040-881e-1bfc1ccbb5b4"
},

がGUIDですので、グループ名を取得するにはGraph APIをたたく必要があります。Portalを見れば、なんのグループかはわかりますが。

f:id:StateMachine:20180712204752p:plain:w400