はじめに
Googleのインフラで実行されるクラウドサービス「Google App Engine」が2009年4月7日にJavaに対応しました。Javaエンジニアにも利用できるようになった、Google App Engineを一緒に勉強して行きましょう!
今回はGoogleのサービスで利用されている認証サービス「Google Accounts」をあなたのサービスで利用可能にする「Google Accounts Java API」を勉強したいと思います。
対象読者
- ウェブサービス開発に興味のあるJavaエンジニア
- Google App Engine for Javaに興味がある方
- Google App Engine for Javaの認証をGoogle Appsのアカウントで利用することに興味がある方
- (独自ドメインで運用したい方のみ): DNSの設定(CNAMEレコード)を変更できるスキルがある方
必要な環境
- 「Google Plugin for Eclipse」がインストールされている、Eclipse 3.3(Europa)か3.4(Ganymede)
- (Google Appsと連動させたい方のみ)Google Appsのアカウント
開発環境の構築手順については、第1回の解説を参照してください。
Accounts Java APIとは?
Google App Engineでは、Googleのサービスで利用されている認証サービス「Google Accounts」の認証結果をアプリケーションから利用できる以下のような機能(API)が提供されています。
- 認証
- アクセスコントロール(管理者権限/一般ユーザ権限/認証していないユーザ権限)
認証後には、API経由で以下のような情報を取得することができます。
- 認証したドメインの取得
- ユーザのメールアドレスの取得
- ユーザのニックネームの取得
Google App Engineは、Google Appsと連動させることで独自ドメインに組み込まれたGoogle Accountsの認証を利用することができます。そのため、認証ドメインが必ずしも「gmail.com」になりません。
以下は、私の個人ドメイン「daisukeyamashita.com」で運用しているGoogle App Engineから利用しているGoogle Accounts Java APIの認証ページを表示させているところです(詳細は後述)。
プロジェクトの作成
ボタンメニューから[g]ボタンをクリックして新規プロジェクトを作成します。
今回はGWTを利用しないので、[User Google Web Toolkit]のチェックは外してください。Project nameは「GAccountTest」、Packageは「com.daisukeyamashita.test.gaccount」にしました。