2017-02-09 12 views
1

GoogleのOpenId Connectディスカバリ文書hereを見ました。これは明らかに、サポート主張であることを示していますGoogleのOpenId Connect APIがすべての申し立てを返送しないのはなぜですか?

"claims_supported": [ 
    "aud", 
    "email", 
    "email_verified", 
    "exp", 
    "family_name", 
    "given_name", 
    "iat", 
    "iss", 
    "locale", 
    "name", 
    "picture", 
    "sub" 
] 

およびサポートされているスコープは

"scopes_supported": [ 
    "openid", 
    "email", 
    "profile" 
] 

ている私は私が得るだろうと私は(https://www.googleapis.com/oauth2/v3/userinfoある)OpenId Connect UserInfo end pointにGETリクエストを送信するときにすることを期待しますバックサポートされているすべての特許請求の範囲の(私が認証されたときに、私は以下に示すように、私は最初のリクエストを送信するときにやったサポートスコープ...のすべてを要求したと仮定して)

https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=my-client-id&redirect_uri=http://myapp.com&scope=openid profile email&state=someLongStateIdentifier 
彼らはサポートの特許請求の範囲の全てのサブセットであるか...私はすべて得ていないのです、なぜ誰も教えてもらえます

{ 
    "sub": "...", 
    "name": "...", 
    "given_name": "...", 
    "family_name": "...", 
    "picture": "...", 
    "email": "...", 
    "email_verified": true, 
    "locale": "..." 
} 

注意:ここでは

は、私がのUserInfoエンドポイント要求からの応答に入った主張しています私の回答には、サポートされているクレームのうちどれですか?

+0

私が正しく理解していれば、UserInfoエンドポイントはプロジェクトのサポートされているスコープを返すべきだと思いますか? – DaImTo

+0

@DalmTo申し訳ありませんが、私は各スコープへのアクセス権を要求し、アクセス権が与えられているので、UserInfoエンドポイントはサポートされているすべてのクレームを返すべきだと考えています。 –

答えて

0

サポートされているすべてのクレームを必ずしも返すわけではありません。サポートされているクレームは、それがサポートされていることを意味します。 userinfoエンドポイントから返されるかどうかを判断するのは、ユーザーがそれらの関連クレームの値を持っているかどうかです。また、Googleはユーザーに直接関係のない申し立てを除外することもできます。なぜなら、それはuserinfoエンドポイントだからです。

関連する問題