3

Oauth2 は承認認証に使用できますか?

私が理解しているように、Oauth2はコンシューマー アプリケーションがプロバイダー (Facebook、Google、Twitter など) からのユーザー情報にアクセスすることを承認します。

しかし、Oauth2 を使用してユーザーを認証することはできますか? たとえば、ネイティブ モバイル フロントエンドとバックエンド API で構成されるアプリがあるとします。Oauth2 を使用して、Facebook、Google、Twitter などのプロバイダーからの承認に加えて、認証を有効にして維持できますか?

はいの場合、どのように?たとえば、認証トークンを永続化し、それをセッション トークンとして使用しますか? または、OpenId Connect は、サードパーティプロバイダーを介して「コンシューマー」アプリに対してユーザーを認証するために必要ですか?

4

1 に答える 1

5

仕様に準拠した形式の OAuth 2.0 は、ユーザー認証には使用できません。そうは言っても、ユーザー認証を可能にする OAuth 2.0 の拡張機能を開発できます。Facebook などの一部のプロバイダーは、まさにそれを行っています。

しかし、OpenID Connect と呼ばれる、ユーザー認証を可能にする OAuth 2.0 の標準化された拡張機能もあります。標準化された方法でサードパーティ プロバイダーを介してコンシューマー アプリに対してユーザーを認証する場合は、OpenID Connect が実際に必要です。OpenID Connect のトークン形式は JWT であり、トークン自体は と呼ばれid_tokenます。id_tokenをセッション トークンとして使用できます。

OAuth 2.0 とユーザー認証に関する広範な記事については、http://oauth.net/articles/authentication/を参照してください。

于 2015-03-10T18:53:22.073 に答える