問題タブ [claims]

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.

0 投票する
1 に答える
187 参照

wcf - WCF で要求ごと (URL ベース) のクレーム認証を無効にする方法は?

クレーム ベースの承認を使用する WCF サービスがあります。

私がやりたいことは、操作を で属性付けClaimsPrincipalPermissionAttributeし、カスタムで一度だけ認可チェックをトリガーすることClaimsAuthorizationManagerです。ただし、この承認チェックが 2 回トリガーされていることがわかりました。1 回目は URL 用、2 回目は操作自体用です。

この件に関する情報はあまり見つかりませんが、私が見つけたものは、これが設計によるものであることを示しています。この動作を上書きして、URL に対する承認を行わず、操作に基づく承認のみを実行することはできますか?

URL に基づいて承認することには興味がありません。また、URL ごとにクレームを追加することは避けたいと考えています。これは、URL が多数ある可能性があり、将来変更される可能性があるためです。

私はいくつかの記事を読み、このテーマに関する Dominick Baier のビデオを見ました。これらから多くのことを学びましたが、これに対する答えはまだ見つかりません。これは単に不可能であり、URLに基​​づいて承認する必要があるだけですか?

0 投票する
2 に答える
4483 参照

asp.net-mvc - Windows Azure Active Directory (WAAD) によるクレームの変換

現在、MVC.NET アプリケーションでシングル サインオンとして Windows azure Active Directory を使用していますが、その部分はうまく機能します。WAAD に対して認証し、ClaimsPrinicipal を問題なくロードできます。

次のステップは、別のデータ ソースから新しいクレームを追加して、WAAD から取得したクレームを変換することでした。この範囲で、ClaimsAuthenticationManager (以下) を継承するクラスを作成しました。クレームはプリンシパルに追加され、CreateSession メソッドのセッション Cookie に永続化されます。

私の問題は、ClaimsPrincipal.Current に、私が追加した追加のクレームが含まれていないことです。SessionAuthenticationModule_SessionSecurityTokenReceived イベントにブレークポイントを設定すると、ClaimsPrincipal.Current の間に不一致があることがわかります。

および e.SessionToken.ClaimsPrincipal です。

ここで何が欠けていますか?クレームの変換を扱ったすべてのサンプルで、Cookie から ClaimsPrinicipal を手動でリロードすることについて言及されていません。セッション セキュリティ トークン イベントは、ClaimsPrincipal を再読み込みする適切な場所でしょうか?それとも、セキュリティ モデルを破っているのでしょうか?

ありがとう。

0 投票する
1 に答える
264 参照

asp.net - アプリケーションのロールをグループ ID に変換する

私が取り組んでいる ASP.NET プロジェクトでは、管理者がデータベースにいくつかの役割を設定しています。これらのロールをユーザー プリンシパル クレームで比較する必要があります。

現時点では、すべての GroupSID を対応する名前に変換しています。

_roleNamesロールを含む文字列のリストです。

問題は、このプロセスがかなり遅いことです。プリンシパルは Active Directory からのものであり、多くのクレームがあります。

アプリケーションのroleNames を に変換する方法はありますか? 基本的に を名前GroupSIDに変換するプロセスをスキップできますか?GroupSID

擬似コード:

0 投票する
1 に答える
464 参照

sql-server - SQL Server からの ADFS ロール

シナリオ: イントラネット アプリケーションでは、ADFS は認証 (アカウント ストア) に AD を使用し、承認 (ロール/属性ストア) に SQL サーバーを使用します。

役割は、私自身のアプリケーション固有のものです。ADFS を使用する必要がある他のアプリケーションがあります。SQL Server を使用してロールを取得するように ADFS が構成されている場合、他のアプリケーションはどうしますか? 彼らはどのように承認を管理しますか?

私の理解は正しいですか?はいの場合、私の答えを確認してください:

回答: ADFS は AD 識別子 (SID/名前) を返すだけです。これを SQL サーバーの役割にマップします。ロール管理は、Sql サーバーに接続する自分のアプリケーションで行う必要があります。session を使用して、認証のために毎回 DB にヒットするのを防ぎます。

0 投票する
2 に答える
80 参照

claims-based-identity - RP と IP が直接通信するのではなく、ブラウザーを介して通信するのはなぜですか?

RP がブラウザーをメディエーターとして使用するのはなぜですか? 認証前に RP が直接 IP にリダイレクトできず、認証後にその逆ができないのはなぜですか?

私はいくつかの理由を思いつきましたが、自分自身を納得させることができませんでした..だからあなたに尋ねます:)

1) RP と IP は接続回線を維持できません (反対: RP が STS Web サービスを呼び出し、応答でデータを取得した場合)

2) Cookie/セッションを管理するには (に対して: しかし、RP は最終的に Cookie を返すことはできませんか? そして、ブラウザは各リクエストでそれを返し、セッションを維持します),

3) データ保護ポリシー (良いポリシー) のため、資格情報を IP に渡すのはブラウザーの責任です。

4) IP は発信者が誰であるかを知る必要があります (反対: なぜ?)