BT

Javaアプリケーションのためのきめの細かい認可

| 作者: Srini Penchikala フォローする 37 人のフォロワー , 翻訳者 編集部N フォローする 0 人のフォロワー 投稿日 2010年10月11日. 推定読書時間: 3 分 |

原文(投稿日:2010/10/06)へのリンク

XACML 仕様に基づいた、fine-grained authorization(FGA、きめの細かい認可)システムは、ユーザーの役割をベースにしてユーザーを認可する、これまでのRole Based Access Control (RBAC) 方式に加えて、状況や環境の情報に基づいた評価ルールによって、俊敏性と制御能力を増すことができる。最近のJavaOne 2010 カンファレンスでSubbu Devulapalli 氏は、ユーザー認可ドメインにおける標準とデプロイ モデルについて講演した。

氏は、プレゼンの冒頭で、認可ポリシーは、しばしばアプリケーションのプログラムにハードコードされていて、ビジネス環境で変更するのは、難しく、高くつく、と述べた。きめの細かい認可と資格の付与は、これまでの資格の付与とは、違う管理が必要である。認可要求は、ソフトウェア開発プロセスの初期フェーズの開始から、充分強調されるべきである。 Rich Security Modelingのような成果は、実際にソリューションをコーディングする前に、ユーザー認可モデルを設計する助けになる。ポリシー モデリングには、モデリングや設計工程における 原則、 目標、アクション、そして 制約のようなポリシーの様々なコンポーネントを含むべきである。そしてQAテスト工程では、アプリケーションのテストプロセスの一部として、 セキュリティ ポリシーのテストを含むべきである。

FGAモデルには、以下のものを含む:

  • Role Based Access Control (RBAC、ロールベースのアクセス コントロール)
  • Attribute Based Access Control (ABAC、特性ベースのアクセス コントロール)
  • Access Control Lists (ACLs、アクセス コントロール リスト)
  • Label/Lattice Based Access Control (LBAC、Label/Lattice ベースのアクセス コントロール)

認可とアクセス コントロールの標準には、JAAS パーミッション, XACML, そして OpenAZ(XACMLへのJavaバインディング)プロジェクトがある。デプロイには、2つのFGAモデルがある:

  • 集中型: このモデルには、認証と認可のための集中型サーバーを呼ぶことも含む。それには、2つの実装方法がある:webサービスは、ほとんど互換性があるが、実行時に遅い、バイナリ プロトコルの方が、よりよいパフォーマンスを提供する。
  • 組込み型: このモデルでは、認可のためのコードは、アプリケーション コードの一部としてデプロイされる。このモデルは、最高のパフォーマンスを出すが、メモリもより多く使用する。

開発者は、アプリケーションに認可要求を実装するときは、POJOを超えて考えるべきである。FGAは、アプリケーション アーキテクチャの全レイヤーで使われているので- UI要素( JSP, サーブレット, HTML, AJAX)、データ セキュリティ(データ オブジェクトに対するセキュリティを調整する)、サービス (EJB, JMS, RMI, Web サービス)、コンテンツとドキュメント-ユーザー認可を設計するときは、サービスの観点から考えるべきである。アプリケーションのデータ セキュリティは、データベースにデータを送る前に検証用のクエリを行ったり、CRUD操作を基に、追加のクエリ制限を課したり、そして、クエリで戻されたデータセットの項目をフィルター(あるいは、完全に消去)するようなタスクによって管理されるべきである。

Devulapalli 氏は、パフォーマンス、認可の問い合わせによるオーバヘッドの最小化、クラスタリングにおけるスケーラビリティの考慮、マルチスレッド化、キャシュなどによる高可用性、そしてPolicy Decision Point(PDP、ポリシー決定点)は自律的である必要があること(すなわち他のコンポーネントがたとえダウンしても、サービスを提供できなければならない)について話した。彼は、セッションの締めくくりに、アーキテクトや開発者は、目の前のプロジェクト ニーズを超えて、相互運用性のようなアーキテクチャ要求を考えるばかりでなく、買収や規制の観点から会社の将来の方向を考える必要がある、と提言した。
 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT