Twitterの認証を利用する
Microsoft Accountでの認証に成功したら、次はTwitterでの認証を試してみましょう。Twitterのアプリケーション登録と、たった1行のコード修正でTwitterの認証に対応できます。
[1]Twitterアプリケーションを登録する
最初にTwitterアプリケーションの登録を行います。「Twitterのアプリケーション登録画面」を開きます。画面の[Create new application]ボタンをクリックするとアプリケーション登録画面が開きます(図10)。
下表通り、情報を設定してください。
入力 | 内容 |
---|---|
Name | アプリケーション名を入力する。 |
Description | アプリケーションの概要を入力する。 |
WebSite |
アプリケーションを説明するWebサイトのURLを入力する。 必須であるため、ここでは代替のURLを設定している。 |
Callback URL |
認証が成功したあとにリダイレクトされるURLを指定する。 Microsoftアカウントの場合と同じく、 モバイルサービスで提供されるURLを指定する。 |
最後にライセンスに関連する同意などを設定し、「Create your twitter application」ボタンをクリックして完了です。
[2]アプリケーション情報を確認する
アプリケーションの作成が完了すると、情報確認画面に遷移します(図11)。ここから、コンシューマーキー(Consumer key)とConsumer Secret(コンシューマーシークレット)を確認してください。
[3]Twitter情報の設定をする
先程と同じく、モバイルサービス管理画面のID設定画面を開きます。twitter設定のコンシューマーキーと、コンシューマーシークレットテキストにTwitterアプリケーションから取得した情報をそれぞれ設定し、保存します(図12)。
[4]コードを修正する
Twitter認証に対応するためにコードを修正します。リスト3を開いてください。コードの修正は、LoginAsyncメソッドの引数をMicrosoftAccountからTwitterに変更するだけです。
user = await App.MobileService ③ .LoginAsync(MobileServiceAuthenticationProvider.Twitter); message = string.Format("ログイン - {0}", user.UserId);
[5]実行する
それでは実行してみましょう。先ほどのケースとは異なり、Twitterの認証画面が表示されるのが確認できるはずです(図13)。ユーザーIDとパスワードを入力してログインします。
先ほどと同様に、ログインのダイアログが表示されれば正しく認証されています(図14)。
ここでも取得できるのは、TwitterのIDのみです。ただしTwitterの場合は、公開APIを利用することで、Twitter名などの各種情報を取得できますので、サンプルを改造してチャレンジしてみてください。
まとめ
Windows Azureモバイルサービスを利用すると、前回解説したプッシュ通知はもちろん、認証サービスまで簡単に利用することできます。そして、たった1行の変更で各種認証サービスに対応できます。ここで紹介した以外にもGoogleとFacebookが利用できるので、ぜひ試してみてください。
PaaSとしてサービスインしたWindows Azureですが、モバイルサービスのようなSaaS、IaaSへと進化していることがご理解いただけたでしょうか。