2016-12-21 9 views
1

XACMLは、サブジェクト、リソース、env、アクションなどのさまざまなカテゴリに基づいてリソースにアクセスするきめ細かな制御を提供できることを理解します。XACML:リソース内のプロパティへのアクセスを制御する方法

評価が行われ、リソースを取得することを決定したら、ユーザー/被験者がアクセスできるリソースのどのフィールド/プロパティを制御できますか?

例えば、以下のフィールドを持つ顧客というリソースがあります。

顧客:私はこの情報にアクセスする販売代理店を持っている場合は、{名前、isVip、にphoneNumber}今

、私はいくつかの選択の販売代理店にVIP顧客のにphoneNumberを示したいと思います。

これはGET顧客情報のAPIに対応する必要があります:通常の販売代理店によって呼び出さ

: 選択した販売代理店によって呼び出さ{名前、isVip}

: {名前、isVip、 phoneNumber}

これをXACMLで達成できますか?はいの場合、どうですか?

答えて

1

はい、できます。

あなたのリソースをどのように定義し、どのようにポリシーを書くかは、すべて問題です。あなたの場合、 "Customer"タイプのオブジェクトがあり、 "field"タイプのオブジェクトを持っています。 Name、isVip、およびphoneNumberはCustomerオブジェクトのすべてのフィールドです。

次のポリシーを記述することができます。彼らはそれに割り当てられている場合

  • 販売代理店と同じ周辺地域に顧客の顧客オブジェクトを表示することができ
  • 販売代理店は、顧客ののPhoneNumberフィールドを表示することができますお客様

執行はどのように行われますか?あなたが見なければならないことは、途中で強制的にやり直すことができるということです。言い換えれば、あなたは聞くことができる

  • 販売代理人ビューの顧客レコード#123をアリスにすることはできますか?
  • 許可

アプリは、レコードをフェッチします。

  • 販売代理店のビューセクションをアリスにすることができるかどうかを調べるには、顧客レコード#123の1、#2、#3?
  • 許可、拒否、ところで

を拒否し、後者は、複数の判定要求の一例です。あなたはMDPs herehereについてもっと読むことができます。

関連する問題