私が知っている遅い答えですが、うまくいけばこれは誰かを助けるでしょう:
MYSITEは thunderofthor.com のようなものになります
ステップ1:
対象の App Engine ドメインに 2-legged OAuth を設定します。これを行うには、管理者としてhttps://www.google.com/a/MYSITEにログインします。高度なツールで、[OAuth ドメイン キーの管理] をクリックします。ここで、[このコンシューマ キーを有効にする] と [すべての API へのアクセスを許可する] をクリックして、これらのオプションを有効にします。Google 側では、MYSITEコンシューマ キーとOAUTHCONSUMERSECRETを使用するリクエストを処理できるようになりました。
ステップ2:
サーブレット コードで、MYSITE になるOAuthConsumerKeyを要求することで、クライアントが正しい資格情報を持っていることを確認できます。
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
String user = null;
try {
OAuthService oauth = OAuthServiceFactory.getOAuthService();
user = oauth.getOAuthConsumerKey();
LOG.info("Authenticated: " + user);
} catch (OAuthRequestException e) {
LOG.info("Not authenticated: " + e.getMessage());
}
ステップ 3:
Google からGTMOAuthパッケージをダウンロードします。これにより、iOS がサーバーと簡単に通信できるようになります。2-legged auth にはパッケージ全体は必要ありません。実際、必要なのは GTMOAuthAuthentication ファイルだけです。コードで使用するには、次のようにします。
NSURL *url = [NSURL URLWithString:@"https://MYSITE/dosomething"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
GTMOAuthAuthentication *auth = [[GTMOAuthAuthentication alloc] initWithSignatureMethod:kGTMOAuthSignatureMethodHMAC_SHA1 consumerKey:@"MYSITE" privateKey:@"OAUTHCONSUMERSECRET"] ;
[auth setVersion:@"1.0"];
[auth addRequestTokenHeaderToRequest:request];
// Perform request and get JSON back as a NSData object
NSHTTPURLResponse *response = nil;
NSError *error = nil;
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
そこには!ユーザー名とパスワードを必要とせずに、簡単に安全に通信できます。