問題タブ [security-roles]

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 に答える
1241 参照

asp.net - ネストされたグループ権限の処理 (ASP.NET ロール プロバイダー)

グループ/ロールのメンバーシップに基づいて、ASP.Net のリソースへのアクセス許可を制御するセキュリティ モジュールがあります。Active Directory にグループ メンバーシップを照会し、このモジュールで使用されるカスタム ASP.Net ロール プロバイダーを作成しました。

セキュリティ チェックは、リクエストごとに次のように機能します (パフォーマンス上の理由からキャッシングが使用されますが、このリストからは除外されます)。

  1. ユーザー グループ メンバーシップのリストについて AD にクエリを実行する
  2. 要求されたリソースへのアクセス権を持つユーザーとグループのリストをデータベースに照会します
  3. AD からの結果をデータベースからの結果と比較します。ユーザーが明示的に権限を持っている場合、またはユーザーが属するグループが権限を持っている場合はアクセスを許可し、そうでない場合は許可しません。

問題は、ネストされたグループがある場合に発生します。ParentGroupChildGroupの2 つのグループがあるとします。ここで、 ChildGroupは Active DirectoryのParentGroupのメンバーであり、ユーザーはChildGroupのメンバーです。上記のロジックに従って、ChildGroupにリソースへのアクセスを許可すると、ユーザーもリソースにアクセスできるようになります。

論理的には (とにかく私には) ParentGroupにリソースへのアクセスを許可すると、そのすべてのメンバー、および再帰的に取得されたサブグループとそのメンバーも、そのリソースにアクセスできるようになります。しかし、代わりに、私のロジックが機能する方法が原因で、リソースにアクセスできません。上記のリストのステップ 1 では ParentGroup が表示されず、 ChildGroupのみが表示され、ステップ 2 ではParentGroupのみが表示され、 ChildGroupは表示さません。

問題は、「論理的に」説明したように機能させるには、どこで問題を修正する必要があるか、別の方法よりもうまく機能する方法があるかどうかです。

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

asp.net - asp.net mvc2で特定のユーザーの非表示と非表示のボタンを表示する方法

ASP.NET MVC 2 のセキュリティ ロールに基づいて、特定のユーザーのボタンを表示し、別のユーザーのボタンを非表示にするにはどうすればよいですか。

たとえば、ビューに[作成]ボタンがある場合、管理者のみに表示し、他のユーザーには非表示にする方法。

ありがとう。

0 投票する
3 に答える
2982 参照

asp.net-mvc - ユニットテスト(mvc)-ロールの問題

私はmvcアプリケーションを持っており、pocoオブジェクトを操作して単体テストを作成しています。問題は、このコード行Roles.IsUserInRole( "someUser"、 "role")に到達すると、すべてのテストが失敗することです。ロール用の新しいインターフェイスまたはリポジトリを実装する必要がありますか...?どうも

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

spring-security - SpringSecurityロールプレフィックスおよびカスタムユーザー詳細サービス

""Springのカスタムユーザー詳細サービスでロールプレフィックスをに設定するにはどうすればよいですか?


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

security - セキュリティ アーキテクチャ - UI と特権 (権利) を駆動するための設定 - ユーザー アカウントごとの役割ベース

大企業は、一元化され、ユーザーが実行できること (特定の Web サービスの呼び出し、注文の送信など) や UI (ボタン、メニュー オプション、個別の無効化など) を推進するために使用されるセキュリティ要件をどのように実装していますか?フォーム フィールド)?

RBAC アーキテクチャを検討しています: ユーザー -> 役割、役割 -> 特権。

多くの個々の field-account-user-role-amountThreshhold に基づく権限を持つ複雑なアプリケーションには、非常に多くの「役割」があり、役割の数が増えるにつれて、これの管理が複雑になります。

これらの考えられるすべてのオプションを管理するのは大変なことのように思えます。私の以前の経験では、そのようなロジックをアプリケーションにハードコーディングしていました。

元:If (User.Roles("IsAccounting")) { btnEditOrder.enabled = false; }

私は、あらゆる/すべてのアプリケーション (すべて.NET、一部の GUI および一部のプロセス指向) の共通の認証/承認ポイントとして使用されるセキュリティ サービス/アーキテクチャの設計/実装を任されています。

これは、クライアント アカウントに関するビジネス組織と、金額に基づく権限階層のため、すぐに使用できるものではありません。

例: John はユーザーであり、アカウント "Microsoft" および "Google" の要求を表示および送信できます。Mike は "Microsoft" と "Google" の要求を表示できますが、"Google" の要求しか送信できません。

アカウント/ユーザーの数は多く、可変です。

RBAC に従うと、必要なすべての権利 (特権) に対応するために何百もの「役割」が存在することになります。管理者が直属の部下を適切な役割に割り当てることができるように、管理しやすい GUI ツールを提供することが最終目標であるため、これは役に立ちません。

私は、次の API を使用してこのセキュリティ ピースを実装することを考えていました (疑似コードのラフ ドラフト)。

アプリケーションでの使用法は次のようになります。 if (securityContext.RequestManager.CanSubmitRequest("Google")) {...}

このようにすると、パーミッションをチェックするための「Can(params)」メソッドが何千も存在することになり、このパターンの管理や使用が容易になりません。

リンク/アイデア/ポインタは大歓迎です。

これは .NET ショップですが、.NET (Membership / AzMan) からは、必要な粒度と委任の要件を提供してくれるものは何もありません。ActiveDirectory と Oracle LDAP の統合は便利ですが、必須ではありません。

古い (現在の) システムは LDAP を使用してユーザーを認証しますが、すべての承認は社内で行われ、従来の「ユーザー、ロール、権利」テーブルに保存されます。

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

java - ITIM でユーザーに割り当てられたグループを許可する

ITIM は初めてです。私はJAVAでアプリケーションに取り組んでいます。割り当てられているグループに基づいてユーザーを承認したいと考えています。どうやってやるの?

ユーザーの役割/グループを取得して承認できる API はありますか?

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

c# - WindowsフォームセキュリティC#

C#でWindowsフォームアプリケーションを開発しています。このアプリケーション内でユーザー認証を作成しました。ユーザーの権限に応じて、さまざまな機能へのアクセスをユーザーに制限する必要があります。

それを助けることができるフレームワークはありますか?

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

oracle-apex - Oracle dbms.set_role が APEX アプリケーションで機能しない

j2ee アプリケーションでは、セキュア アプリケーション ロールを使用します。基本的に、データ ソースはアプリ ユーザー スキーマを使用してデータベースに接続します。アプリ ユーザーにはセッション作成権限しかありません。データベース ログオン トリガーは、一連の属性をローカルのセキュリティで保護されたコンテキストにコピーします。(IP アドレス、セッション ユーザー、クライアント ID、アプリケーション名)。アプリケーションは、DML が実行される前にストアド プロシージャ sec_mgr.set_role を明示的に呼び出します。

sec_mgr.set_role は、ローカル コンテキスト属性をチェックし、IP、アプリケーション名を承認し、セッション ユーザーに基づいてこのセッションに適切なロールを設定します。

同じフレームワークを APEX アプリケーションに適用したいと考えています。まず、paring スキーマを create session 権限のみを持つ app スキーマに変更します。次に、sec_mgr.set_role がアプリケーション ビルダーで呼び出される plsql コードを配置します --> 共有コンポーネント ---> セキュリティ属性の編集 ---> Virtual Private Database (VPD)。

ただし、エラー ORA-06565 が発生しました: ストアド プロシージャ内から SET ROLE を実行できません

sec_mgr.set_role は実行者権限 (AUTHID CURRENT_USER) として定義されます

それを機能させるためにAPEXに何か欠けていますか?

ありがとう

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

authentication - LDAP認証

一部の既存のシステムに対して、LDAPを使用した承認および認証メカニズムの実装を開始しています。開発段階で、私は難しい設計上の決定に直面しています。ユーザーの役割をどこに保存する必要があるのでしょうか。

RDBMSを使用した場合、ロールとユーザーをマップするためのuserroleuser_roleの3つのテーブルがあるように見えます。

利用可能な解決策を提案してください。ユーザーの役割をDBに保存し、ユーザーをLDAPに保存することを考えていますが、それが最善の解決策かどうかはわかりません。アプリケーションサーバーとしてJBossを使用しています。