2015年11月18日水曜日

[Azure AD]カスタム・アプリケーション向けプロビジョニングにSCIM2.0のサポート

こんにちは、富士榮です。

IDaaSの主要機能の一つに連携しているアプリケーション向けのプロビジョニング機能がありますが、Azure Active Directory(Azure AD)もGoogle Appsやsalesforce.com、BoxなどメジャーなSaaSアプリケーション向けのプロビジョニングをサポートしてきました。

今回、アプリケーション向けのプロビジョニング機能の強化の一環としてSCIM 2.0(System for Cross-domain Identity Management)のサポートが発表されました。

 Active Directory Teamのblog
  Azure AD Premium now supports SCIM 2.0!
  http://blogs.technet.com/b/ad/archive/2015/11/17/azure-ad-premium-now-supports-scim-2-0.aspx


このニュースを見て、標準ではプロビジョニングできないSaaSアプリケーションでもSCIMをサポートしていればID管理できる!!と思ったのですが、現状はいろいろと制限があります。。。。
(PingOneとかSCIMをサポートしている別のIDaaSへのID同期に使えるかと思ったのですが・・・)

以下が現状の制限事項として大きい点です。
1.SCIMのエンドポイントの保護をAzure ADが行っているサービスのみに対応
  ※Azure ADが発行したOAuth2.0 Bearerトークンを使ってアクセスできるSCIMサーバのみなので、実質自分で開発したアプリケーションしか対象はありません。

2.Azure AD自体がSCIMサーバになった訳ではないので、Azure ADのID管理にSCIMは使えない
  ※これまで通り、Graph APIを使ってID管理をしましょう。

  参考)[Office 365 & WAAD] Graph API を利用したアイデンティティ管理
      http://idmlab.eidentity.jp/2012/12/office-365-waad-graph-api.html


使い方としては、Azure AD Premiumライセンスが割り当たっているユーザでギャラリーからカスタムアプリケーションを追加すると、「アカウント プロビジョニングの構成」メニューが出てくるので、SCIMエンドポイントの設定を行います。


先にも書いたようにSCIMサーバのエンドポイントはAzure ADによって保護されている必要があるため、client idやsecretなどOAuth関連のパラメータを入れる余地はありません。

SCIMサーバの作り方はこのあたりに書いてあります。
 https://azure.microsoft.com/en-us/documentation/articles/active-directory-scim-provisioning/

SCIM用のライブラリも用意されていて、nugetでダウンロードできます。
 https://www.nuget.org/packages/Microsoft.SystemForCrossDomainIdentityManagement/


本当はサードパーティアプリケーションやAzure AD自体へSCIMを使ってプロビジョニングができるようになると良いなぁ、と思いますので今後に期待です。

0 件のコメント: