問題タブ [role-base-authorization]
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.
authentication - 認証時のデータアクセス
私は Web アプリケーションを構築していますが、識別された人に対して保護されている操作がいくつかあります。
私はアクセス制御に sping セキュリティを使用していますが、データ レベルにまで深い場合にそれらを制御する方法がわかりません。
たとえば、操作list
とedit
操作の 2 つがあります。
administrator of the company
と の両方がadministrator of one department
これらの操作にアクセスできますが、「リスト」または「編集」できるデータは同じではありません。
administrator of the company
会社のすべてのデータにadministrator of one department
アクセスできますが、自分の部門のデータにしかアクセスできません。
では、これらの要件を実装するためのベストプラクティスは何だろうか?
ruby-on-rails - correct_userおよびadminの複数のbefore_filterステートメント
適切な権限で設定しようとしているグループリソースがあります。
私が実装しようとしている承認ロジックは次のとおりです。
- グループメンバーのみが自分のグループを表示できるようにする必要があります。
- 管理者は、任意のグループを表示したり、他のアクションを実行したりできます。
グループコントローラーで次のbefore_filterステートメントを使用してこれを実行しようとしています。
Correct_userは、グループメンバーのみがグループを表示できることを確認したので機能します。ただし、私がしたいのは、admin:show句でこれをオーバーライドして、管理者が任意のグループを表示できるようにすることです。現在、それは機能していません。ここで、フィルターの順序とオプションに問題があると思います。
誰かが私がどこで間違っているのか教えてもらえますか?
編集
Amarのリクエストに従ってメソッドコードを追加します。
ruby-on-rails - RORでのログインユーザーの役割に基づいてコントローラーアクセスを制限する方法
私のDBには次のように4つのテーブルがあります
- 関数{id、name
- Admin_Users {Id、Eメール、パスワード、role_id}
- 役割{id、name}
- Role_Functions {id、role_id、function_id}
私はWeb開発環境としてRoRを使用しています。
ここ、
ログインしたユーザーの役割(role-base-authorization)に基づいてコントローラーのアクセスを制限したいのですが、どうすればよいですか?新しいテーブルが必要ですか?
authentication - Yii ロールベースのアクセス、自分の投稿の管理
私はググったり、チュートリアルやブログを読んだり、たくさん実験したりしました。そのため、コントローラー アクションへのロール ベースのアクセスを定義できます。すべて正常に動作します。聞きたいことは。ユーザー自身の投稿を表示、編集、および削除するルールを作成するにはどうすればよいですか?
デフォルトでは、すべての投稿が表示されます。ただし、データプロバイダーの基準を設定して、独自の投稿を表示できます。しかし、そのためにCRUDをどのように制御できますか?? 親切に私を助けてください。私のコードは以下です。
投稿表示の場合:
django - Django、さまざまな役割がある場合に行レベルの権限システムを使用/設計する
私は学習管理システムを開発しています。
システムには、Student、Tutors、Admin、Deanなどの複数のアクターがあります。次に、さまざまな役割を処理できる許可システムが必要です(Studentsはコースをバスケットに追加でき、TutorsはコースをCRUDでき、Adminsは財務部分にもアクセスできます)同様に、など)
私の調査に基づいて、さまざまな役割を処理できる行レベルの権限システムが必要です。などのようなアプリを見たことがありますがdjango-guardian
djang-permissions
django-rulez
、それらに基づいてロールを設計する方法についてはまだ混乱しています(それらは十分に文書化されていません)。
誰かが私にこのつらい仕事を成し遂げるためのヒントを与えることができますか?
scsf - SCSF でのユーザーの役割に基づいてモジュールの読み込み動作をカスタマイズする方法
SCSFでのユーザーの役割に基づいてモジュールのロード動作をカスタマイズする方法を知っている人はいますか?
php - CodeIgniter のフィールドレベル ACL
私は SO を検索し、ACL、CodeIgniter、Role ベースなどのすべての組み合わせをグーグル検索し、コントローラーとメソッドへのアクセスを制御するための多くの優れた製品を見つけましたが、フィールドレベルの制御を提供するものについては空っぽになりました。
いくつか (phpgacl と zend acl) をダウンロードして、フィールド レベルのアクセス許可のニーズに合わせて簡単に変更できるかどうかを確認しました。時間をかけてゼロから作成する前に...
質問:ユーザーのログインに基づいて フィールド レベルの制限を許可するライブラリやベスト プラクティスはありますか?
具体的には、ユーザーの AD グループ メンバーシップに応じて、次のいずれかのフォーム フィールドを作成しようとしています。
- 表示されません
- 表示されるが読み取り専用
- 編集可能にする
ところで、AD グループのメンバーシップはセッション変数で既に利用可能であるため、必ずしもそのビットは必要ありません。私はこれを ACL と役割ベースの両方としてタグ付けしました。違いについて別の議論を始めるためではありませんが、パッケージが私のニーズを満たしていれば、どちらの方法でも構わないからです。
php - PHP の複雑な役割ベースのアクセス制御リスト
このカスタマイズされた ACL システムを実装するために必要なデータベースと php コードは既に作成しています。今、私は現在のユーザーを「承認」する必要があり、そこにあなたのアドバイスが必要です。
システムは、システム ユーザーとシステム モジュールの両方に対する柔軟な権限割り当てに基づいています。また、完全にカスタマイズされたグループを作成する機能を備えた、事前定義された、たとえばユーザーグループもあります。グローバル ルールは ACL の上に適用することもできますが、グループまたはユーザーに割り当てられたアクセス許可よりも優先度が低くなります。
それをよりよく描写するには:
定義済みグループ:
- 限定(アクセス不可)
- 基本的なユーザー
- パワーユーザー
- 管理者
- 訪問者 (カスタマイズされたグループのサンプル)
アクセス レベル (名前と値のペア) は次のとおりです。
- 許可しない / 0
- 許可 / 1
- 拒否 / 2
- 所有者 / 3 の場合に許可
注: 「許可」は「許可しない」より優先度が高いため、ユーザー X がグループ A で「許可されていない」が、特定のアクセスでグループ B で「許可」されている場合、彼は最終的に「許可」されます。一方、ユーザー X が「管理者」グループのメンバーであることによって「フル アクセス」を持っているが、特定のアクセスを単に「拒否」した場合、彼は最後にアクセス権を持っていない、つまり「拒否」を意味します。 「許可」の優先度が高くなります。
トップレベルでは、次のようなものがあるかもしれません:
- "Administrator" * "1" は、管理者がシステムにフル アクセスできることを意味します。
- "ビジター" * "0" は、ビジターが何にも許可されていないことを意味します
私の質問は、これらの種類のチェックを処理する方法ですか? シンプルな認証メカニズムがあると想像してください。$_SESSION['user']
like$_SESSION['user']['login'] = true;
とにはいくつかのインデックスがあります$_SESSION['user']['id'] = $row['user_id']
よね?
さて、このメカニズムをスクリプトに実装したい場合、どのように実装するのでしょうか?
まず、グローバル アクセス ルールを確認します。次に、ユーザーがすでにログインしているかどうかを確認します。はいの場合は、すべてのグループを取得し、アクセス許可のテーブルを調べて、グループとユーザー ID に割り当てられているアクセス許可を確認し、それらをユーザー セッションに保存します。次に、これが実行に必要なアクセス許可であるとモジュールが言うと、ユーザーが要求されたモジュールへの十分なアクセス権を持っているかどうかを確認します。
かなり複雑に見えます!どんな助けやアドバイスも大歓迎です!:)
編集:
私はフレームワークを使用していません。実際に使っていますが、自前です。したがって、ここには事前に作成された ACL はありません。
アップデート:
ACL に優先順位を付ける (上書き/置換する) 効率的な方法について何か考えはありますか?
Deny
Allow
は最高Disallow
です。またUser
、割り当てられた ACL が最も高く、次にGroup
ACL、最後にGlobal
ACL です。
これが私が最終的に思いついたものです:
Array
次のようながあります。
まず、すべての Global Rules を探して、*
それらを配列に配置します。
次に、グループ ベースの ACL を探します。
結局のところ、ユーザーが割り当てた ACL を探します。
私はそれが完全に機能すると思います、何かアイデアはありますか?
それは今かなりうまくいきます:)
asp.net-mvc-3 - MVC3では、役割ベースの承認でエリアへのアクセスを制限する方法は?
MVC3 では、次の例のように、[Authorize] 属性を使用してコントローラーへのアクセスを制限し、ユーザーがクラス内のコントローラー アクションにアクセスするには管理者ロールに属している必要があることを指定できます。
ただし、Area 内の各 Controller クラスに [Authorize] 属性を指定せずに、MVC3 の Area 全体へのアクセスを制限するにはどうすればよいですか?
c# - C# で自動生成されるスレッドの GenericPrincipal を設定する方法
私はアプリケーションにコードを持っています
しかし問題は、私のアプリケーションがいくつかのスレッドを実行すると自動的に作成されますが、原則は上記のものと同じではありません。それを設定する方法は?