web-dev-qa-db-ja.com

属性ベースのアクセス制御(ABAC)を実装するためのアプローチを探しています

属性ベースのアクセス制御の実装を検討しています。私たちは哲学に基づいて販売されていますが、次の2つのトピックがあります。

  • 重大なパフォーマンスの問題につながりますか?特に、きめの細かいアクセスを求める場合。適切なバランスをとるための構造化されたガイダンスを探していると思います。
  • XACMLを実装できる利用可能なPEPはありますか? IBMとOracleを確認した私の同僚たちは、まだエンタープライズに対応できる状態にあるとはあまり感じていません。
10
raghu

免責事項:私は、ABAC/XACMLの主要ベンダーであるAxiomaticsで働いています。

ABACの理念に基づいて販売されていると聞いて、うれしいです。まだ行っていない場合は、次のリソースを確認してください(コマーシャルリンクは割愛します)。

さて、直接あなたの質問に関して:

  • それは重大なパフォーマンスの問題につながりますか?特に、きめの細かいアクセスを求める場合はどうでしょうか?ABACソリューションを計画して設計する場合、考慮すべき2つの主要なポイントと最もパフォーマンスに影響を与えるのは、PEPからPDPへの通信リンク(PEPはアプリケーションを保護する実施ポイントであり、PDPは承認要求を処理して承認ポリシーを評価する決定ポイント)とPDPからPIPリンク(PIPまたはポリシー情報)です。ポイントは、属性ソース(LDAP、データベース、Webサービスなど)へのブリッジです。政策評価それ自体は、まったく高価ではありません。アクセスがきめ細かいかどうかは、必ずしもパフォーマンスに影響を与えるとは限りません。ただし、許可サービス(PDP)をどのように公開したかがわかります。 SOAPサービスとして公開する場合、SOAPサービスのレイテンシを導入します。ApacheThriftなどのバイナリプロトコルを介して公開する場合、パフォーマンスは同様に、10個の異なるソースから10個の属性を取得する必要があり、各ソースのレイテンシが長い場合、パフォーマンスは低下します。ただし、属性ルックアップをバンドルし、属性ソースを統合して属性をキャッシュすることを常に選択できます。値は「はい」です。正しく設計されていれば、ABACは正しく実行できます。例を示すと、Paypalは属性ベースのアクセス制御を使用しており、そのパフォーマンスは良好です。Fortune50の大企業のすべてが、同時にABACを使用しています。厳密なパフォーマンス要件。下の図は、パフォーマンスを向上できる6つのポイントすべてを示しています。
    • ポリシーがメモリにロードされる方法(1)
    • ポリシーの評価方法(2):適切なポリシー構造を構築すると、完全に評価する前に、承認ポリシーの最大90%をすばやく排除できます。
    • pIPから属性値をフェッチする方法(3)。これは、前述のように考慮すべき主要なポイントです。この統合によるパフォーマンスへの影響を軽減するためのいくつかの手法があります
    • pEP側で承認の決定をキャッシュする方法(4)。
    • 承認リクエストを複数の決定リクエストにバンドルする方法:これにより、PEPとPDP間のラウンドトリップが節約されます(5)
    • 最後に、そしておそらく最も重要なこととして、PEPとPDPがどのように通信するか(前述のとおり)。自分に最適なプロトコルを選択するだけです(埋め込み、バイナリ、SOAP ...)(6) XACML Architecture - Performance Points - © Axiomatics
  • XACMLを実装できるPEPはありますか?はい、もちろんあります。 Axiomatics(OracleやIBMのような大きなベンダーではない可能性が高い)などのいくつかのベンダーとオープンソース実装がPEPを提供しています。例として、この list を参照してください。既製のコンポーネントとの統合もあります。たとえば、FedoraはそのOS用に提供しています。 SAP用のものがあります。 AxiomaticsはSQLデータベース(Oracle、SQL Server ...)用に1つを提供します。 SharePointやLiferayなどのCMSを保護することもできます。 OpenAZ プロジェクトも確認してください。

あなたの同僚は、IBMとOracleだけを調べましたか?主要なプレーヤーは間違いなくこれら2つではなく、むしろ小規模なベンダーとオープンソースコミュニティです。

ガートナーが最近述べたように、ABACはそのための方法です。彼らは、組織の70%が2020年までにABACを採用すると予測しています。さあ、今こそ始める時です。

15
David Brossard