問題タブ [openid-connect]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 新しいテナントの OwinStartup の後に Owin パイプライン ミドルウェアを追加する
各テナントが WsFed または OpenIdConnect の独自の ClientID、Authority などを定義できるマルチテナント アプリケーションがあります。以下のように、すべてのテナントが OwinStartup に登録されます。
経由で使用する STS を切り替えますcontext.Authentication.Challenge(AuthenticationType)
。これは本当にうまくいっています。
問題は、新しいテナントがサインアップしたときに、アプリケーション プールのリサイクルなしで新しいテナントにアクセスしIAppBuilder
て追加するにはどうすればよいかということです。AuthenticationOptions
django - 承認と認証のための Oauth2?
Oauth2 は承認と認証に使用できますか?
私が理解しているように、Oauth2はコンシューマー アプリケーションがプロバイダー (Facebook、Google、Twitter など) からのユーザー情報にアクセスすることを承認します。
しかし、Oauth2 を使用してユーザーを認証することはできますか? たとえば、ネイティブ モバイル フロントエンドとバックエンド API で構成されるアプリがあるとします。Oauth2 を使用して、Facebook、Google、Twitter などのプロバイダーからの承認に加えて、認証を有効にして維持できますか?
はいの場合、どのように?たとえば、認証トークンを永続化し、それをセッション トークンとして使用しますか? または、OpenId Connect は、サードパーティプロバイダーを介して「コンシューマー」アプリに対してユーザーを認証するために必要ですか?
azure - OpenID OWIN 認証とユーザー権限の欠如
私はこれを完全に間違って処理している可能性がありますが、MS Azure で OpenID を使用してユーザーを認証しています。次に、OpenID ミドルウェアの通知でユーザーがユーザー アカウントを持っていることを確認します。ユーザーが見つからない場合は、セキュリティ例外をスローします。このアプリケーションタイプ ページへのアクセス権がありません。フックが足りないだけですか?
例を次に示します: https://gist.github.com/phillipsj/3200ddda158eddac74ca
openid-connect - 独自の OpenID Connect プロバイダーを持つことは理にかなっていますか?
ローカル ログイン (従来のメール/パスワード ログイン) とソーシャル ログインを 3 つの Web サイトのグループ (同じサブドメイン) に実装する必要があります。
最終的にはモバイル アプリで使用する API を公開する可能性があるため、(オープン ソース ソリューションを使用して) 独自の OpenID 接続プロバイダーをホストすることを検討しています。ローカル ログインと API は、このプロバイダーを使用して認証します。
これは良い考えですか?よりシンプルで安全な代替手段はありますか?
ありがとう
openid-connect - ユーザーが end_session_endpoint に対して「いいえ」と言った場合、どうなるでしょうか?
OpenID Connect セッション (質問時のドラフト 23)では、次のように述べています。
ログアウト エンドポイントで、OP はエンドユーザーに OP からもログアウトするかどうかを尋ねるべきです。エンドユーザーが「はい」と言った場合、OP はエンドユーザーをログアウトする必要があります。
したがって、ユーザーが [はい] をクリックすると、まだ OP の領域にいるので、ウェルカム画面に戻すことができます。ただし、ユーザーが「いいえ」をクリックすると、動作は定義されません。
私はそれが次のようなものになると推測しています:
state
RP アプリケーションのログアウト ボタンを押す前にユーザーが最後にアクセスしていた既知のページとします。- RP のログアウトは、ユーザーがトークン取り消しエンドポイントを使用して OP 上の RP に対して持っているすべての資格情報を破棄します (RP によって再同意が必要な場合)。
- 次に、それを渡して end_session_endpoint にリダイレクトします。
state
- OP end_session_endpoint に到達すると、ユーザーはたまたま「いいえ」を選択します
- ユーザーは OP からログアウトされません。
- ユーザーは、渡された状態で post_logout_redirect_uri にリダイレクトされます。
- RP にある post_redirect_uri は、ユーザーを状態の authentication_endpoint にリダイレクトします。
- ユーザーはまだ OP にログインしており、同意がまだ存在すると想定しているため、ユーザーがアプリケーションを離れていないかのように状態でユーザーを RP コールバックにリダイレクトする必要がありますが、id_token のまったく新しいセットが現在あります。
リダイレクト ループを防ぐために、RP は、ログアウトが存在しなくなった場合に有効な ID を必要としないことを保証する必要があります。そうしないと、リダイレクト ループが発生します。
flask - Basic Flask OpenID Connect の例
OpenID 2 に対する Google のサポートの終了が迫っているため、Flask-Googleauth のような便利なライブラリを使用している人は移行する必要があります。Flask -oidcと呼ばれる OpenID Connect 用の Flask ライブラリがあります。残念ながら、それを使用する方法に関する情報はないようです。flask
とのタグが付いた SO の質問を探しましopenid-connect
たが、見つからなかったので、この質問です。
ここに、flask-oidc の概念実証の使用法としてまとめたものを示します。これは、 flask-oidc の app.py ファイルに基づいています。
ここで説明したようにアプリケーションを登録した後、認証のためにユーザーを Google に正常に送信し、ユーザーを に戻し、ユーザーをhttp://127.0.0.1:8080/oidc_callback
にリダイレクトhttps://127.0.0.1:8080/
しますが、認証のためにユーザーを Google にリダイレクトし、リダイレクト ループを作成します。
もちろん、私の質問は簡単です。認証されたユーザーにそのインデックス ページを表示させるにはどうすればよいでしょうか?
openid - OpenID4Java から OpenID Connect
コードで OpenID4Java ライブラリを使用しています。Google が推奨する OpenID Connect へのアップグレード方法: https://developers.google.com/accounts/docs/OpenID