問題タブ [google-oauth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
12 に答える
149844 参照

web-services - Google 認証 API アクセス トークンを確認するにはどうすればよいですか?

Google 認証アクセス トークンを確認するにはどうすればよいですか?

何らかの方法で Google にクエリを実行し、「[与えられたアクセス トークン] は [example@example.com] Google アカウントに対して有効ですか?」と尋ねる必要があります。

短縮版

Google Authentication Api :: OAuth Authentication for Web Applicationsを通じて提供されるアクセス トークンを使用して、さまざまな Google サービスからデータをリクエストする方法は明らかです。特定のアクセス トークンが特定の Google アカウントに対して有効かどうかを確認する方法が明確ではありません。方法を知りたいです。

ロングバージョン

トークンベースの認証を使用する API を開発しています。有効なユーザー名とパスワードが提供されるか、 N 個の検証可能なサービスのいずれかからサードパーティのトークンが提供されると、トークンが返されます。

サードパーティ サービスの 1 つが Google であり、ユーザーは Google アカウントを使用して私のサービスに対して認証を行うことができます。これは、後で Yahoo アカウント、信頼できる OpenID プロバイダーなどを含むように拡張されます。

Google ベースのアクセスの概略例:

代替テキスト

「API」エンティティは私の完全な管理下にあります。「パブリック インターフェイス」エンティティは、Web ベースまたはデスクトップ ベースのアプリです。一部の公開インターフェースは私の管理下にあり、他のものは制御できず、まだ私が知ることさえないものもあります。

したがって、ステップ 3 で API に提供されたトークンを信頼できません。これは、対応する Google アカウントのメール アドレスと共に提供されます。

どうにかして Google にクエリを実行し、「このアクセス トークンは example@example.com に対して有効ですか? 」と尋ねる必要があります。

この場合、example@example.com は Google アカウントの一意の識別子であり、ユーザーが Google アカウントにログインするために使用するメール アドレスです。これを Gmail アドレスと見なすことはできません。Gmail アカウントを持っていなくても Google アカウントを持つことができます。

Google のドキュメントには、アクセス トークンを使用して、さまざまな Google サービスからデータを取得する方法が明確に記載されています。そもそも、特定のアクセストークンが有効かどうかを確認する方法については何も述べていないようです。

更新 トークンは N 個の Google サービスに対して有効です。特定のユーザーが実際に使用しているすべての Google のサービスのサブセットがわからないため、検証の手段として Google サービスに対してトークンを試すことはできません。

さらに、Google 認証アクセス トークンを使用して Google サービスにアクセスすることは決してありません。単に、想定される Google ユーザーが実際に本人であることを確認する手段としてだけです。これを行う別の方法があれば、喜んで試します。

0 投票する
8 に答える
101537 参照

authentication - サイトに「Google でサインイン」を実装するにはどうすればよいですか?

私のサイトでは、ユーザーが Google アカウントでサインインできるようにしたいと考えています。openid を使用する予定ですが、より多くの利点があるため、Google でのサインインを許可したいと考えています。過去に、openID をサポートしていなくても、Google (gmail) アカウントと IIRC でサインインできるサイトがいくつかあることに気付きました (ただし、間違っている可能性があります)。

「Google でサインイン」を実装するにはどうすればよいですか?

0 投票する
3 に答える
9532 参照

openid - OpenIDをGoogleに委任します(Google Appsではありません)

私の個人的なウェブサイト/ブログを使用して、openidを使用するサイトにログインし、私のGoogleアカウントに委任することは可能ですか?


OK、私はSOでこの質問を検索しましたが、良い答えはありません。しばらく過ごした後、私はそれを行う方法を理解しました。私はそれを共有する方法としてこれに自分で答えるつもりです。

0 投票する
4 に答える
2659 参照

java - Javaでグーグルのメール/ユーザー名を取得しますか?

OAuthを使用して正常に認証されたGoogleアカウントのユーザー名を取得することは可能ですか?

ユーザーのアクセストークンを取得しましたが、API呼び出しであるかどうか疑問に思っています。https://google.api/getUserNameを使用してアクセストークンをその呼び出しに渡し、ユーザーのメール/ユーザー名を正常に取得できますか?

通常のOAuthWebサービスでは、Webサービスを呼び出すために必要なのはシークレットとIDアクセストークンだけですが、Googleではユーザー名も必要です。

何か案は?

0 投票する
1 に答える
205 参照

authentication - Google ToDo リストの承認 (AuthToken、secid)

次の URL で Google の todo フィードにアクセスしようとしています。

https://www.google.com/calendar/tdl?secid=<SECID>&tdl={%22action_list%22%3A[{%22action_type%22%3A%22get_all%22%2C%22action_id%22%3A%221%22%2C%22list_id%22%3A%2215052708471047222911%3A0%3A0%22%2C%22get_deleted%22%3Afalse}]%2C%22client_version%22%3A-1}

これをブラウザで正しい secid で開くと、必要なものが正しく表示されます。

さて、問題は次のとおりです。プログラムで (具体的には Java プログラムで) secid を取得するにはどうすればよいですか? (CalendarService から) authToken にアクセスできますが、それを使用して上記の URL へのアクセスを承認する方法がわかりません。

URL http://google.com/accounts/ServiceLoginを使用しようとしましたが、例が見つかりませんでした。

何か助けてください。

0 投票する
10 に答える
115749 参照

security - Google Authenticator は公共サービスとして利用できますか?

自動実行 (LAMP スタックなど) Web アプリでGoogle Authenticator (2 要素認証)を使用するためのパブリック API はありますか?

0 投票する
3 に答える
15353 参照

oauth-2.0 - Google OAuth 2 認証 - トークンのコードの交換

Google OAuth 2 を実装して Google API にアクセスしようとしています。サーバー側のシナリオを使用して、このガイドに従います。

コードの取得に問題はありません。サーバーは localhost にリダイレクトします (現在、リダイレクト URI で許可されている唯一のサーバーです)。これを達成するために、https://accounts.google.com/o/oauth2/auth?client_id=whatever.apps.googleusercontent.com&redirect_uri=http://localhost/&scope=https://www.google.com/m8/feeds/&response_type=codeページに移動します。

次に、curl(ガイドのように) を使用して、Google のサーバーがアクセス トークンで応答するかどうかをテストしてみました。しかし、それは非常に難しいようです。私が得ることができる唯一の応答はです{"error":"invalid_client"}。コード、クライアント ID、クライアント シークレット、リダイレクト URI (localhost) grant_type=authorization_code、.

curlコマンドライン全体は次のとおりです。

何か不足していますか?アクセス トークンのコードを交換するにはどうすればよいですか?

0 投票する
4 に答える
110446 参照

oauth - アクセストークンが期限切れになるのはなぜですか?

GoogleAPIとOAuth2の使用を始めたばかりです。クライアントが私のアプリを承認すると、「更新トークン」と短期間の「アクセストークン」が与えられます。これで、アクセストークンの有効期限が切れるたびに、更新トークンをGoogleにPOSTでき、新しいアクセストークンが提供されます。

私の質問は、アクセストークンの有効期限が切れる目的は何ですか?更新トークンの代わりに、長続きするアクセストークンがないのはなぜですか?

また、更新トークンは期限切れになりますか?

Google OAuth2ワークフローの詳細については、 「 OAuth2.0を使用したGoogleAPIへのアクセス」を参照してください。

0 投票する
3 に答える
19684 参照

php - Google CalendarAPIv3-ハードコードされたクレデンシャルで認証する

私は、ユーザーが特定のイベントをプライベートGoogleカレンダーに追加できるようにすることになっているPHPアプリケーションを書いています。カレンダーは私が所有しており、PHPが固定クレデンシャルを使用してカレンダーAPIと通信する方法が必要です(誰でもWebサイトのフォームを使用してイベントを追加できますが、カレンダー自体は公開されません)。

私が読んだことから、これはv1APIのClientLoginを使用して可能です。ただし、v3 APIでは、使用可能なオプションはOAuth2.0またはAPIキーです。APIキーの使用は、認証を必要としないリクエストにのみ使用できるため、機能していないようです。また、ユーザーが自分のカレンダーにアクセスすることは想定されていないため、OAuthも正しくないようですが、アプリケーションが使用します。

プログラムでOAuthトークンを取得することを考えましたが、OAuthダイアログでキャプチャを使用できるため、遅かれ早かれ壊れることになります。

これは、そのような標準的なユースケースのようです。ユーザーが事前定義された方法で単一のカレンダーを操作できるWebアプリケーションですが、v3APIでそれを実現する方法に関するドキュメントが見つかりません。誰か助けてもらえますか?

0 投票する
16 に答える
151431 参照

google-api - Google 開発者キーはどこで入手できますか

私はチャット、連絡先などの Google API に取り組んでいます... developer_keygdata doc に記載されているように、私は立ち往生しています。

これはhttps://code.google.com/apis/consoleで取得できます。

私はすでに持っています:

開発者キーはどこにありますか?

こんなものを見つけました

しかし、私はこれが youtube のためだけであることを理解しています。