誰でもここでAuth0のGoogleからのソーシャルログインを実装しましたか? Googleで検証した後にトークン(アクセスとID)が返される問題があります。[承認済み] API呼び出しのAuth0トークンを使用したGoogleソーシャルログイン
はここに私のコードです:
var waGoogle = new auth0.WebAuth({
domain: 'testApplication.auth0.com',
clientID: '************',
redirectUri: 'http://localhost:8080/'
})
waGoogle.authorize({
connection: 'google-oauth2',
responseType: 'id_token token'
}, function(err, authResult){
if(err){
console.log('Google Login Error')
console.log(err)
}
});
Googleの画面が現れ、私がログインし、私は戻って私のアプリケーションにリダイレクトされています。アプリケーションから、URLを解析して、アクセストークンとIDトークンを取得できるようにします。私が午前
let getParameterByName = (name) => {
var match = RegExp('[#&]' + name + '=([^&]*)').exec(window.location.hash);
return match && decodeURIComponent(match[1].replace(/\+/g, ' '));
}
var access_token = getParameterByName('access_token')
var id_token = getParameterByName('id_token')
問題は、トークンのどれもが、私は[承認]属性で装飾されている(asp.netのWeb API)私のAPIを呼び出すことができないということです。それは返します
401(無許可)
私は私のAPIが
方法ユーザー名、パスワード、認証
ノーマルを使用して、動作していることを知っています私はアクセストークンも取得しますが、私のAPIコールはちょうど引き抜かれています。
Googleからアクセス権とid_tokenを取得した後に行う必要がある手順はありますか?自分のWeb APIを呼び出すために適切なアクセストークンを取得するためにAuth0を追加呼び出しする必要がありますか?
ありがとうございました。
[ここ](https://auth0.com/docs/goog-clientid)に説明されているように、自分の鍵でGoogleのソーシャル接続を設定しましたか? –
はい、私はしました。私はトークン(アクセスとID)を取得することができますが、私が直面している問題は、それらのトークンがasp.net Web APIの[Authorized]で装飾したAPIに対して許可されていないことです。 – aThink
アクセストークンはJWTトークン(3つのセクションを持つ長い文字列、ドットで区切られています)を取得していますか?もしそうなら、あなたはhttps://jwt.ioでそれをデバッグし、データベース接続を使用するときに発行されたものとどのように違うのかを見ることができます。 –