2013年4月11日木曜日

[WAAD]Windows Azure Active Directory が正式リリース


ようやく正式リリースされました。

Windows Azure チームの blog
 - Windows Azure Active Directory: Ready for Production with over 265 Billion Authentications & 2.9 Million Organizations Served!


細かいポイントはすでに色んな人が書いているので省略しますが、
・マイクロソフトアカウントで作成したWindows Azureテナントから利用が出来るようになった
・アプリケーション統合が管理ポータルから出来るようになった
というあたりが新規機能です。

ブチザッキ
 - Windows Azure AD/Backup Serviceほかいろいろ

Cloud Identity(Vittorio Bertocciのblog。MSDNから引っ越しました)
 - Windows Azure Active Directory Reaches General Availability
 - Walkthrough #1: Adding Sign-On to Your Web Application Using Windows Azure AD
 - Walkthrough #3: Developing Multi-Tenant Web Applications with Windows Azure AD

他にも Graph API で若干変更があったので、ここではその点を見ておきます。

最大のポイントは
・リクエストのパラメータに api-version を指定する必要がある様になった
・それに伴い、data contract version の指定が不要になった
という点です。

もちろん、今のところこれまでと同じエンドポイントも使えるのですが、その場合はこれまで通り data contract version を指定する必要があります。(しかも 0.5 / 0.8 のみ指定が可能)


ユーザ情報の取得を行う場合を例に新しいリクエスト方法を見てみます。

・エンドポイント:https://graph.windows.net/テナント名.onmicrosoft.com/users?api-version=2013-04-05
・メソッド:GET
・ヘッダ
 - Authorization/取得したJWT
 - Accept:application/json;odata=verbose;charset=utf-8
  ※簡易取得なら odata=verbose は不要

これまでは以下でした。
・エンドポイント:https://graph.windows.net/テナント名.onmicrosoft.com/users
・メソッド:GET
・ヘッダ
 - Authorization/取得したJWT
 - x-ms-dirapi-data-contract-version:0.5 or 0.8
  ※直近までは 0.9 も指定可能だったが、今は 0.5 / 0.8 しか受け付けない
 - Accept:application/json;odata=verbose;charset=utf-8
  ※簡易取得なら odata=verbose は不要

ちなみに古い形のリクエストで data contract version を付けないと HTTP 400 Bad Request が返ってきて、0.5 / 0.8 / 0.9 / 1.0 のどれかを指定するように言われるのですが、実際 0.9 や 1.0 を指定しても同じく Bad Request となってしまいます。


逆に新しい形のリクエスト(パラメータに api-version=2013-04-05 をつける)だと、data contract version をヘッダにつける必要はなくなり、Response ヘッダを見ると version 1.0 が使われていることがわかります。



後、実は大きな変更点なのですが、エンドポイントのリソース名(usersやgroups)が小文字しか受け付けなくなりました。
以前はリファレンスにも Users とか Groups と書いてありましたが、今は users や groups のようにすべて小文字にしないと 404 Not Found が返ってきます。



今後も以前の宣言通り OpenID Connect 対応など、IDMaaS としての機能が色々とリリースされるようなので、目が離せません。

0 件のコメント: