問題タブ [jacc]
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.
java - Java EE セキュリティの概念
Java EE 6 (Glassfish サーバー) を使用しauthentication
てアプリケーションを作成する必要があります。authorization
私は Java EE 6 のセキュリティについて多くのことを読みましたが、私の概念が正しいかどうかを尋ねたかっただけです。
社内のすべてのユーザーは、 に従ってアカウントを持っています"X123456"
。これを次の目的で使用したいLDAP Authentication
:
アプリケーション ---> LDAP
そのため、会社のインフラストラクチャを使用してユーザーを承認できます。
ただし、アプリケーションのロールを制御したいと考えています。そこで、 を使用して独自の役割を定義したいと思いますJACC
。したがって、ユーザーからロールへのマッピングを使用してデータベースを作成します。
Example
: "X123456 -> 管理者".
利点は次のとおりです。
- パスワードを保存する必要はありません
- アプリケーションに一種の管理パネルを作成し、既存のロールをユーザーに動的に設定できます
これは技術的に可能であり、良い習慣だと思いますか?
代替案: Active Directory で役割 (管理者、ユーザー) を定義し、LDAP 経由で照会することは可能でしょうか? そのため、ユーザーとロールのマッピングを Active Directory に委託することができました。
アップデート:
- 認証には、現在 LDAP レルム (ユーザー、パスワード) を使用しています。
- 承認のために、データベース (ロール名、ユーザー) を使用したいと考えています。ただし、認証にデータベースを使用するようにアプリケーションに指示する方法がわかりません。JDBC レルムを使用する場合は、グループ/ロール テーブルと列を指定できます。JDBC-Realm のみを認証に使用するようアプリケーションに指示する方法はありますか?
java - JAAS & JACC: ユーザーを追放するにはどうすればよいですか?
現在、JBoss EAP 6.4/7.0 を使用して JAAS と JACC を採用しています。適用方法について簡単に説明します。
HttpServletRequest.login(...)
認証に使用します- その後、
HttpServletRequest.logout()
ログアウトに使用します。 - 資格情報を検証し、ロールを準備する LoginModule があります。
すべて問題ありませんが、アプリケーションの一部で、特定のユーザーのセットを許可する必要があります。
- システムにログインするために他の誰かの役割を取り消します。
- 現在アクティブなセッションからそれらを追い出します。
最初の部分は簡単ですが、誰かのセッションを無効にする方法を理解するのに苦労しています。どうにかして他のユーザーのサブジェクト/セッションを取得して無効にする方法はありますか?
とても有難い