Visual Studio 2017RCでは、個々のユーザーアカウントでASP.NET Core MVCアプリケーションを作成し、https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/google-loginsチュートリアルを完了してGoogle認証を添付しました。私は今私のGoogleアカウントを介してログインしています。ASP.NET Core MVC OAuth 2.0でアクセストークンの値を取得する方法
私は(Startup.csの設定方法で)自動生成されたコードに数行を追加しましたでしたすべて:
app.UseGoogleAuthentication(new GoogleOptions
{
ClientId = "xxxx.apps.googleusercontent.com",
ClientSecret = "xxxx",
Scope = { "email", "openid" }
});
私は今、Googleが発行されたアクセストークンの値を取得する必要があります(とアプリによってクッキーに保存されます)。それを使ってGoogleサービスにアクセスするためのXOAuth2キーを生成します。たとえば、HomeControllerのAboutメソッド(標準ウィザードで自動生成)では、受信トレイに未読メールの数を表示したいとします。 XOAuth2キーを使用してGmailにログインし、ここから進めることができます。
このトークンはどのように入手できますか? - Google経由で初めてログインするときにアクセストークンをデータベースに保存する必要はありますか?もしそうなら、標準的なウィザードで生成されたASP.NET Core MVCアプリケーションでこれをどうやって行うことができるのか? - または、私は常にクッキーからアクセストークンを読むことができますか?もしそうなら、どうですか?
好ましくは、私はクッキーから読み込み(とにかくそこにいる)、この情報をデータベースに複製しないようにしますが、このアプローチが実行可能かどうか(つまり、解読できるかどうか)はわかりません。
私はこれをASP.NET MVCで一度だけ行いましたが、ASP.NET Core MVCでは多くの変更がありました。従来のコードはもう使用できません。
にアクセストークンを取得することができますか? – conterio
私は正確に覚えていませんが、私はそれが 'Microsoft.AspNetCore.Identity.ExternalLoginInfo'だと思います。 – Alex
どこから情報を取得しますか? – Murray