[開発者向け] Windows Live 開発者向けプラットフォームに OAuth 2.0 などを追加 ― 任意のデバイスやアプリケーション、サイトへの接続が引き続き可能

 

*本記事は、Windows Live developer platform adds OAuth 2.0 and more, continuing to let users connect the devices, apps, and sites they choose の抄訳です。

任意のデバイスやアプリケーション、サイトに接続できなければ、より充実した統合型のエクスペリエンスは実現できない、とマイクロソフトでは考えています。ほとんどすべての Windows 7 PC に Messengerフォト ギャラリーなどの アプリケーションがプレインストールされています。そのため、Facebook や LinkedIn などのサービスに接続するだけで、Facebook チャット、Messenger でのソーシャル フィード、フォト ギャラリーでの人物タグ付きの画像の投稿、Windows Live を通じたすべての連絡先情報のシームレスな入手など、広範囲に及ぶリッチな機能を利用することができます。もちろん、サービスに 1 回接続すれば、接続先のサービスはユーザーと共に Windows PhoneHotmail などにローミングします。

逆に、ユーザーが選ぶ別のデバイスやアプリケーション、サイトから、Hotmail や Messenger、SkyDrive にシームレスにアクセスする必要もあります。Messenger Connect は、サイトやアプリケーションの開発者が SkyDrive や Messenger、Hotmail をエクスペリエンスに組み込むためのプラットフォームです。この統合をさらに簡易化する新しい拡張機能を本日、発表できることを喜ばしく思います。

Messenger Connect のリリース以降、開発者がマイクロソフトの API をどう使いたがっているのか、このプラットフォームをどう改善すればよいのかという点について、フォーラムを通じてだけでなく、WordPressSina WeiboGigya などのパートナー各社からも的確なフィードバックを得ることができました。開発者は当然、より新しい標準プロトコルを使った、より多彩な統合シナリオを利用したいと考えています。そしてプログラミングはもちろん、アプリケーションやサイトのエンド ユーザー エクスペリエンスもシンプルにしたいと望んでいます。

そのため、進化した Messenger Connect により、次のものが提供されるようになりました。

OAuth 2.0 ― 最新の Web 承認規格
  • マイクロソフトが OAuth 2.0 をサポートすることで、Facebook や Google といった他の Web プラットフォームで使用される標準の認証プロトコルを使って、Hotmail や Messenger、SkyDrive をより簡単に統合できるようになりました。
シングル サインオンと新しい Hotmail カレンダー アクセス
  • シングル サインオン: ユーザーが既に Hotmail や SkyDrive、MSN.com、または他の場所から Windows Live ID を使ってサインインしている場合、貴社のサイトにアクセスした時点で資格情報の再入力は必要ありません。
  • Hotmail カレンダー: アプリケーションからプログラミングを使って、ユーザーのカレンダーに予定を挿入することができます。
デスクトップおよびモバイル Web でのユーザー エクスペリエンスの改良
  • アプリケーションにユーザーがアクセスを許可する方法を刷新しました。ユーザーが与えるアクセス許可を従来より明確化し、データに対するユーザー自身のコントロール能力を高めました。また、この認証ダイアログを複数のバージョンで提供するようにしました。スマートフォン用のタッチ フレンドリーなバージョンもその一部です。
プログラミングの簡易化
  • JSON データ形式に特化することで、REST ベース API を簡素化しました。
  • と同時に、サービスから返される応答の平均サイズを小さくすることで、パフォーマンスを高速化し、必要な帯域幅を削減しました。
  • さらに、JavaScript ライブラリを再設計し、一般的なタスクをより少ない行数のコードで実行できるようにしました。
より多くのコード例を掲載した使いやすいドキュメント
  • 開発者からのフィードバックに基づき、各種シナリオが中心となるようにドキュメントを刷新しました。
OAuth 2.0 ― 最新の Web 承認規格

OAuth は、一方のサービスまたはアプリケーションから、もう一方のサービスまたはアプリケーションでホストされているデータへのアクセスを、ユーザーが許可するための承認プロトコルです。両者間でユーザー名やパスワードを共有する必要はありません。Messenger Connect の旧バージョンでは、OAuth 2.0 の旧バージョンである OAuth WRAP を使用していました。Messenger Connect の新リリースでは、OAuth 2.0 仕様ドラフト 16 をサポートしています。Facebook や Salesforce、Google など、この IETF 標準トラックの仕様を採用する Web プラットフォームが増えつつあります。

Messenger Connect は、単に最新の OAuth 2.0 を実装しているだけではありません。マイクロソフトはこの機会を利用して、ユーザーによる承認プロセスが行われている間の、開発者およびエンド ユーザーのエクスペリエンスを、その重要な側面において改良しました。開発者の立場からいえば、Messenger Connect と統合する際、サーバー側コードで OAuth 検証ステップを実行する必要がなくなりました。すべてクライアント側で、数行の JavaScript コードを使って実行することができます。

シングル サインオンと新しい Hotmail カレンダー アクセス

シングル サインオンにより、ユーザーは HotmailMSN ホームページなど、Windows Live ID ベースの資産にサインインした時点で、Messenger Connect パートナー サイトにもサインインしたことになります。つまり、資格情報の再入力は必要ありません。サイトまたはアプリケーションでこの機能を使用するには、ユーザーの同意を求める際に wl.signin スコープの承認を得るだけで済みます。その後、その Web サイトに、Windows Live ID ベースのサイトにサインイン済みのユーザーがアクセスすると、パートナー サイトまたはアプリケーションにもサインインしていることになります。パートナー Web サイトからサインアウトすると、ユーザーは他の Windows Live Web サイトからもサインアウトすることになります。

もう 1 つ、開発者からの要望が多かったのは、アプリケーションや Web サイトからユーザーの Hotmail カレンダーに予定を追加するという機能です。私のようにスマートフォンとカレンダーを同期しているユーザーには特に、この機能は便利だと思います (Hotmail は Exchange ActiveSync をサポートしています)。外出先でもイベントのアラームを受け取ることができるからです。

デスクトップおよびモバイル Web でのユーザー エクスペリエンスの改良

そのほか、ユーザーがアプリケーションから Windows Live アカウントに接続を試みるとき、アプリケーションが何の情報にアクセスするのかが明確になるようにするために、エンド ユーザー エクスペリエンスに変更を加えました。Messenger Connect の旧バージョンでは、ユーザーが自分の Windows Live ID を使ってサインインを試みるとき、次のようなダイアログが表示されていました。

Messenger Connect の旧バージョンでのサインインダイアログ

アプリケーションからアクセスしようとしている情報の種類が何であれ、同じダイアログが表示されていたのです。アプリケーションがどういった情報にアクセスを試みているかを確認するには、「What will I share」リンクをクリックする必要がありました。Messenger Connect の新バージョンでは、サインイン ダイアログと承認ダイアログが別々になっています。これにより、アプリケーションがアクセスしようとしている情報が明確になるだけでなく、ユーザーが既に HotmailMSN ホームページなど、Windows Live ID ベースのサイトにサインイン済みの場合、余分なサインインの手間を省けるようになりました。

以下に、新しいエクスペリエンスを示します。既にユーザーがサインイン済みの場合は、一回クリックすればよいだけの同意ページが直ちに表示されます。

Messenger Connect の新バージョンでのサインインダイアログ

Messenger Connect の [Allow Access?] ダイアログ

さらに、このエクスペリエンスの携帯電話向けバージョンも用意しました。

携帯電話向けの Messenger Connect サインイン ダイアログ

携帯電話向けの Messenger Connect の [Allow access?] ダイアログ

プログラミングの簡易化

旧バージョンのもう 1 つの問題点として、API が複雑過ぎるということがありました。AtomPub や JSON、RSS、旧来の XML など、サポートするデータ形式が多い割には、それに見合ったメリットがありませんでした。そのため、リソース モデルが複雑化し、API から不要なデータが返される結果となっていました。
新バージョンでは、ただ 1 つの共通形式、JSON を使用します。さらに、リソース モデルも簡素化しました。以下に、フォト アルバムからの取得を行うコード例を示し、旧バージョンと最新バージョンの API どうしを比較します。

旧バージョン: 以前の v4.1 バージョンでは、フォト アルバムからの取得を行う際、Atom 形式で結果が返されていました。

Atom コード例


新バージョン
: よりシンプルになった新しい v5 バージョンでは、同じ結果が JSON で返されます。

JSON コード例

より多くのコード例を掲載した使いやすいドキュメント

従来のドキュメントから、開発者は、Messenger Connect API が他のオンライン サービスで提供される機能よりも複雑であるかのような印象を受けていました。そこで私たちは、Messenger Connect の基本的な使い方や、Messenger Connect を使う人たちのタイプおよび使い方について、コード例を交えながら説明すれば、より有益な情報を提供できるだろうと考えました。Messenger Connect Web サイト (http://dev.live.com) をご覧ください。以下の情報を盛り込み、ドキュメントを更新しています。

  • Messenger Connect に組み込まれた、開発者向けのさまざまな機能に関する明確な説明 (英語)。
  • 認証/承認から JavaScript ライブラリの使用まで、重要トピックを 1 ページに凝縮した概要ドキュメント (英語)。
  • RESTful HTTP 要求または JavaScript ライブラリを使用して Messenger Connect API と対話する方法を簡単にチェックできる、新しいインタラクティブ SDK (英語) へのリンク。
  • Messenger Connect のさまざまな側面をさまざまなクラスの Web サイトに統合する方法を具体的に示す、ショーケース Web サイト (英語)。

前述のように、開発者が Hotmail や Messenger、SkyDrive をアプリケーションや Web サービスに簡単に統合できるようになったため、いずれ、ユーザーが使い慣れた他のサービスやコンポーネントをマイクロソフト製アプリケーションやサービスなどにも簡単に統合できるようになるでしょう。

アプリケーションやサイトを開発中の方は、MSDN のデベロッパー センターで Messenger Connect の詳細情報をご確認ください (英語)。フィードバックもお待ちしています。ユーザーの皆さんは、ぜひ、お気に入りのサイトやアプリケーションの開発元に、Windows Live との統合を提案してみてください。

関連リンク

Windows Live developer platform adds OAuth 2.0 and more, continuing to let users connect the devices, apps, and sites they choose  (英語)

, ,

%d人のブロガーが「いいね」をつけました。