5

グループユーザー、およびロールの Java EE 6 セキュリティの概念を、ロールユーザー、および権限Apache Shiroの概念に精神的にマッピングしようとしていますが、それらには互換性がないことを理解しています。

Java EE 6 セキュリティ チュートリアルを読むと、モデルが制限的すぎるようです。グループは、アプリケーションごとではなくサーバーごとに構成されているため、承認メカニズムを表現するための柔軟な概念は 2 つしかありません。ユーザーロールです。 、単純な 1 対 N の関係で存在します。対照的に、Shiro のロールユーザーパーミッションのモデルは、注釈付きコードでパーミッションをハードコーディングし、ロールからパーミッションへのマッピングを変更できるため、より動的です。実行時に物事が変化したり、新しい役割が導入されたりします。Java EE 6 モデルのように、コンテナー管理の承認で同じことを行う方法がわかりません。

私の理解は正しいですか?これは、コンテナー管理の承認では、実際にはそれほど遠くまで行くことができないことを意味します。

4

1 に答える 1

2

それらは互換性がなく、Java EEセキュリティの設計者は、ROLESに関して用語がずれているように見えるため、間違っていると思います。

経験から、ROLE(ドキュメントで提案されている)に基づいてアクセス制御を提供すると、他のグループ/役割に機能を公開したいときに問題が発生することがわかっています。ロール(またはグループ)にマップされたアクセス許可ベースのアクセスは、再コーディング/再注釈付けではなく、抽象レベルでの再マッピングの演習であるため、最も効果的に機能するようです。

JavaEEセキュリティモデルについてどのように混乱するかわかります。Shiroと、Shiroがアプリケーションレベルのセキュリティをどのようにモデル化したかを詳しく調べることをお勧めします。Shiroの作成者であるLesHazelwoodは、RBACについてのブログを書きました。これは、インスタンスレベルまで細かく制御する必要があるアプリケーションにとって非常に理にかなっています。

于 2012-09-20T14:27:09.273 に答える