2

新しいプロジェクトの認証方式を設計しています。人々は を使用して Google / Facebook / Microsoft などのアカウントを介して認証できますOpenID。これらのプロバイダーはすべて、2 要素認証をサポートしています。

私の目標は単純です。ユーザーが OpenID プリンシパルを使用して登録またはログインするときに、認証サービスにクエリを実行し、ユーザーが 2 要素認証を有効にしているかどうかを確認したいと考えています。彼が両方のステップに合格した場合は、「ようこそユーザー」、そうでない場合は「申し訳ありませんが、このサイトは非常に安全であり、2 要素認証を有効にする必要があります」.

現在のサービスを使用してそれは可能ですか?Google ドキュメントを読みましたが、何も見つかりませんでした。OpenID Connect は、トークンの「2 段階認証」属性も、悪用される可能性のある「強度」属性もサポートしていないため、そのような情報を明らかにする可能性がある特定のプロファイル API に依存する必要があります。しかし、少なくとも Google API にはまだ何も見つかりませんでした。

4

1 に答える 1

1

記録として: OpenID 2.0 と OpenID Connect は異なるプロトコルです。ほとんどのプロバイダーは、以前の OpenID 2.0 標準から OpenID Connect に移行しています。

Facebook は OpenID 2.0 も OpenID Connect もサポートしていませんが、OAuth 2.0 の上に構築された独自のログイン プロトコルを使用しています。Google は、OpenID Connect を支持して OpenID 2.0 のサポートを廃止しました。Microsoft は LiveID の OpenID 2.0 をサポートしていますが、OpenID Connect にも移行しています。彼らの Azure AD アカウントは、既に OpenID Connect をサポートしています。

OpenID Connect はさまざまな認証方法をサポートしており、クライアントはacr認証要求の一部として要求された一連の要求の要求を使用して、指定された値を要求できます。 1_0.html#acrSemantics . プロバイダーは、要求された値のいずれかと一致するacrクレーム値を で返す必要があります。プロバイダーは、認証で使用される認証方法の識別子である文字列の JSON 配列でid_tokenあるクレームを返す場合もあります。amr

残念ながら、あなたが言及したプロバイダーはacrまだ概念をサポートしていないため、答えは「いいえ」になりますが、Microsoft Azure ADamrid_token.

于 2015-01-03T12:31:18.127 に答える