問題タブ [abac]
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.
authorization - WSO2 IS 「サービス メソッド getDecision の呼び出し中に例外が発生しました」 (PolicySet の場合)
私は WSO2 でしばらく遊んでおり、PolicySet のテストを開始しました。「管理者」ユーザーロールのターゲットと、アクセスを許可するだけのポリシーを持つ基本的なものがあります。
リクエストをするException occurred while trying to invoke service method getDecisionと、レスポンスとして返されます。私は Java プログラマーではないので、スタック トレースはあまり役に立ちません。
何か間違っているのでしょうか、それとも WSO2 にバグがありますか?
ポリシーセット:
リクエスト:
ユーザーの役割は、PIP に要求を行うことによって決定されることに注意してください。
スタックトレース:
utf-8 - UTF-8 および特殊文字の WSO2 Idenity Server XACML および XML エンコーディング
WSO2 ベースの PDP の XACML "Try-It" ツールで文字列比較操作をテストすると、XACML (XML) ソース コードとその変数の ASCII 文字と非 ASCII 文字の定義に問題があることがわかりました。以下にいくつかの例を示します。
すべてのソースは、次の先行ヘッダーを使用します。
変数の変換は、「True」である期待される動作と 100% 一致しません。WSO2 ポリシー エディターを使用する場合に "True" のヒット率を改善する方法のヒントはありますか?
authorization - XACML の義務で、「fulfillOn」属性が許可と拒否のみに予約されているのはなぜですか?
Obligations ステートメントの WSO2 Balana フレームワークが、"Permit" または "Deny" の条件のフルフィルオン引数のみを受け入れ、"Not applied" の結果を無視するのはなぜでしょうか。ポリシーのデバッグ プロセス。
Balana ObligationExpression.java のソースには、次のものがあります。
それについてのあなたの意見はどうですか、このロジックは正しく機能していますか?
authorization - XACML 3.0 の同じカテゴリの複数の属性
XACML 3.0 を学んでいて、ID が異なる 2 つの属性があるかどうかを尋ねたいのですが、同じカテゴリ (Category="urn:oasis:names:tc:xacml:3.0:attribute-category:resource") にある場合、これは同じカテゴリの 2 つの異なる属性として、または 1 つの属性を持つ 2 つの別個の要求として解釈されます。
ありがとうございました 。
xml - WSO2 Identity XACML - 条件ステートメントのサポート?
WSO2 XML エディタ内の XACML バージョン 3 構文バリデータに問題があり、ステートメントの挿入が拒否されます。単一の属性チェックの代わりに属性リストを追加する予定です。以下は、XACML 構文バリデータによって拒否されたステートメントの出力です。
「string-bag」を使用したこの単純な条件は、スキーマ エラーをスローしています。
表示されるエラー メッセージは次のとおりです。
「or」論理演算子を使用したこの条件は正常に機能しています。
上記のように、条件を説明するステートメントは、そのルールの最後のセクションとして の直前に挿入されます。
WSO2 PAP は属性リストの使用をサポートしていますか? はいの場合、このエラーは構文構造のエラーで説明できますか?
XACML V3 構文準拠に関する同様の問題をデバッグするのに役立つユーティリティ ツールである、Web で公開されている構文およびスキーマ バリデータを探します。
authorization - RBAC: 複数の属性によるアクセス制御
モデル (テーブル):
- アイテム(id、名前、category_id、status_id)
- カテゴリ(id、名前)
- ステータス(ID、名前)
正確なカテゴリと正確なステータスによってアイテムへのアクセスを制限する必要があります。
状況 1。
Role1 は ID 1 と 3 のカテゴリを持つアイテムにアクセスできる必要がありますが、Role2 は ID 2 と 4 のカテゴリを持つアイテムにアクセスできる必要があります。
状況 2。
役割は項目へのアクセス権を持っている必要があります: カテゴリ 1 の場合はステータス 5 または 6 のアイテムのみ、カテゴリ 2 の場合はステータス 7 または 8 のアイテムのみ
カテゴリとステータスを作成および削除できます。
このようなアクセス制御を RBAC の概念で実装するにはどうすればよいですか?
状況 1 の場合、私の考えは、「accessItemWithCategory_{$categoryId}」のような名前のアクセス許可を動的に作成し、それを適切な役割に割り当てて、ユーザーができるかどうかを確認することでした(「accessItemWithCategory_{$categoryId}」)。それは機能しますが、気分が悪いだけです。
状況2の場合、このようなアプローチを続けると、「accessItemWithCategory_{$categoryId}_Status_{$statusId}」のようなアクセス許可が得られますが、それは醜く、非常に柔軟性がありません。
パーミッション名に id を使用しない場合はどうすればよいですか? ロールがアイテムにアクセスできるようにするロールとアイテムパラメータで追加のテーブルをチェックするルールで単純なアクセス許可「accessItem」を使用できますか? しかし、それは承認制御を RBAC の外に移すことを意味し、役割階層のサポートによって地獄に落ちます。