問題タブ [securitydomain]
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.
jakarta-ee - JAAS を使用した jsf ページへの同時アクセス
WildFly JAAS セキュリティ ドメインで Web アプリケーションのセキュリティを設定しました。いくつかのプロパティを持つページがあり、このページへのシングル ユーザー アクセスを作成したいと考えています。
例: /secured/property.xhtml テッドはログインしてこのページに行きました。他のユーザーはログインできないか、ログインできてもこのページにアクセスできず、"Sorry Ted now use property page" で /secured/sorry.xhtml にリダイレクトされます。Ted がページを離れると、このページへの Tobi アクセスと他のユーザーのアクセスは再びロックされ、sorry.xhtml ページにリダイレクトされます。
私はこれをフィルターとユーザー存在フラグ付きのシングルトン Bean で作ろうとしていました。しかし、JAAS ログイン インターセプターはフィルターの前に機能し、ユーザーがページでログイン リダイレクトを行った後は、使用中であっても失敗しました。
どうすればそのような同時アクセスを行うことができますか?
wildfly - Wildfly は独自の LoginModule を呼び出さない
アプリケーションをグラスフィッシュからワイルドフライ 9.0.0CR2 に移行しました。そして、私は自分の ServerAuthModule と LoginModule に問題があります。standalone-full.xml で、私はこれを設定しました:
Web アプリケーションを呼び出すと、以下のログが表示されます。
Wildfly は私の LoginModule を呼び出さず、彼自身の LoginModule を呼び出しています。構成に誤りはなく、クラスはインターフェース LoginModule と ServerAuthModule のみを実装しています。誰かが同じ問題を抱えていますか?
編集:私は問題を解決しました.ServerAuthModuleにはrealm ="custom.realm"があるため、ログインモジュールスタックの名前を「Custom」から「custom.realm」に変更する必要があります
ejb - Wildfly 8.2.0はセキュアなリモートejbを呼び出します
セキュアなリモート EJB を呼び出そうとしていますが、できません。私は ejb-client-API を使用しています。
アプリケーションは、som.ear という名前の ear にデプロイされます。
Wildfly 8.2.0 final を使用しています
コード クライアント:
jboss-ejb-client.properies
EJB
スタンドアロン.xml
サーバーログ
クライアントログ
セキュリティ ドメイン「som_security_domain」の構成が使用されていることがわかります。クエリを実行してプリンシパルのパスワードとロールを取得するためですが、セキュリティ ドメインの AuthenticationManager のルックアップを実行しようとすると失敗します。ログで私は見ることができます:
[org.jboss.as.security] (EJB デフォルト - 1) som_security_domain/authorizationMgr の JNDI のルックアップが java:jboss not found で失敗しました。
前もって感謝します
caching - セキュリティドメインの Wildfly フラッシュキャッシュ
私はwildflyにデプロイされたJAX-RSインターフェースを備えた戦争プロジェクトを持っており、データベースからユーザーパスワードとロールをロードするセキュリティドメインが構成されています。security-domain は cache-type=default を使用します。古いデータがキャッシュされるため、認証されたユーザーの更新は security-domain によって認識されません。jboss-cli.sh でこれを確認しました。では、特定のユーザーをキャッシュから削除するにはどうすればよいでしょうか? jboss-cli.sh 経由ではなく、デプロイされたアプリケーション内でこれを実行したいと考えています。
authentication - jboss セキュリティ ドメインを使用した LDAP 認証
spring 4.1.6、spring security 4.0.1、および JavaConfig を使用する JBOSS EAP 6 で実行されている Web アプリケーションでは、LDAP 認証を実装しようとしていますが、configure で LDAP サーバーのプロパティ (url など) を定義する代わりに(AuthenticationManagerBuilder auth) メソッドを使用して、コンテナーで既に構成されていて、必要なすべてのプロパティを備えている JBOSS セキュリティ ドメインからプロパティを取得したいと考えています。
私たちはいくつかのことを試し、これを達成するためのアプローチを Web で検索しましたが、解決策を見つけることができませんでした.
これは私たちが現在持っているものです:
/WEB-INF/jboss-web.xml: jboss-web security-domain java:/jaas/ad-ldap security-domain jboss-web
セキュリティ構成クラス:
ありがとう
jakarta-ee - LDAP サーバーでの認証に Picketlink と Wildfly を使用する
少し苦労した後、ワイルドフライのstandalone.xmlを設定して、LDAPサーバーを再度認証するようにしました。
jboss-web も設定しました:
そして私のweb.xml:
すべてが正常に動作します。
次のステップは、PicketLink を使用することです。しかし、自分のセキュリティ ドメインを使用するように PicketLink を構成する方法がわかりません。
プログラムで LDAP 接続を確立するための例とチュートリアル、および ID およびサービス プロバイダーと連携するように PicketLink を設定する方法を見つけることができます。しかし、私が知っているように、私のユース ケースには ID プロバイダーとサービス プロバイダーが含まれていますか?!? したがって、接続したい専用サーバーはありません。LDAP クエリは、wildfly サーバーによって処理されます。すべての例で、両方のサーバーが別々のマシンであることがわかります。私は何か間違ったことを理解しましたか?何時間も「グーグル検索」した後、私はますます混乱しています。
追加した
しかし、picketlink.xml の設定方法がわかりません。ID プロバイダーの URL は? 私が間違って理解している部分が1つだけあると思います。誰かが私を助けることができますか?:-D
java - セキュリティ ドメインが呼び出されていません (動作中)
Wildfly 8.2.0.Final で Databaselogin を使用してアプリケーションを保護しようとしています。
私はstandalone.xmlでデータソースを設定し、データベースにアクセスできるように動作しているようです:
<datasource jndi-name="java:/jdbc/Racoonda" pool-name="RacoondaDS" enabled="true" use-java-context="true">
<connection-url>jdbc:mysql://localhost:3306/racoonda</connection-url>
<driver>mysql</driver>
<pool>
<min-pool-size>1</min-pool-size>
<max-pool-size>100</max-pool-size>
<prefill>true</prefill>
<use-strict-min>false</use-strict-min>
<flush-strategy>Gracefully</flush-strategy>
</pool>
<security>
<user-name>root</user-name>
<password>root</password>
</security>
<validation>
<check-valid-connection-sql>select 1</check-valid-connection-sql>
<validate-on-match>true</validate-on-match>
<background-validation>true</background-validation>
<background-validation-millis>10000</background-validation-millis>
</validation>
<timeout>
<idle-timeout-minutes>10</idle-timeout-minutes>
</timeout>
<statement>
<prepared-statement-cache-size>10</prepared-statement-cache-size>
<share-prepared-statements>true</share-prepared-statements>
</statement>
</datasource>
また、次のようにstandalone.xmlでセキュリティドメインを設定しました:
<security-domain name="racoondaAdmin" cache-type="default">
<authentication>
<login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">
<module-option name="dsJndiName" value="java:/jdbc/Racoonda"/>
<module-option name="principalsQuery" value="SELECT password FROM Admin WHERE id=?"/>
<module-option name="rolesQuery" value="SELECT 'Admin', 'Roles' FROM dual"/>
</login-module>
</authentication>
</security-domain>
リソース/WEB-INF/jboss-webにドメインを追加しました.xml:
次に、resources/WEB-INF/web.xml でアプリケーションを保護しようとしました。
データベースアクセスは、保護しようとしているサービスから値を取得できるため機能します (データベースから値を取得します)。
ただし、資格情報を入力せずにアクセスできます。セキュリティのログ レベルを TRACE に設定し、見つけることができるすべてのアプローチを試しました。前もって感謝します
java - wildfly セキュリティ ドメインが機能しない
私は見つけることができるすべてを試しましたが、これを解決できないようです。jboss-web.xml を使用して、Web サイトで FORM 認証を使用しようとしています。
これが私のstandalone.xmlの私のセキュリティドメインです
これは、standalone.xml にもあるデータソースです。
上記のデータソースは、私が使用しているように機能しています。
UserEntity テーブルの作成に使用される UserEntity.java クラスを次に示します。
wildfly サーバーで実行しようとしたときに表示されるエラーは次のとおりです。
どんな助けでも大歓迎です。ありがとう
jakarta-ee - Bean プロバイダー、アプリケーション アセンブラー、デプロイヤーのロールによる EJB セキュリティ実装のステップバイステップ
仕様「JSR 318: Enterprise JavaBeansTM,Version 3.1」では、EJB 作成の主なアクターとして、Bean プロバイダー、アプリケーション アセンブラー、デプロイヤー、およびシステム管理者としての役割について言及しています。
各役割がセキュリティの見通しにどのように貢献するかを以下に示します。
- Bean Privider: @RolesAllowed、@DeclareRoles などのアノテーションを使用して、単一のエンタープライズ Bean の論理セキュリティ ビューを定義します。
- アプリケーション アセンブラー: デプロイメント記述子の変更/作成は、アプリケーション全体の論理セキュリティ ビューを定義します。セキュリティ ロール参照をセキュリティ ロールにマップします。
ターゲット企業のシステム環境に存在するユーザー グループ、ユーザー、プリンシパルと混同しないでください。これらは Deployer によって処理されます。 - Deployer: Deployer は、Application Assembler に必要な役割がターゲット システムで使用可能であることを確認します。Application Assembler によって指定されたセキュリティ ビューを、対象の運用環境のセキュリティ ドメインによって使用されるメカニズムとポリシーにマップします。
- システム管理者: システム管理者は、ユーザーを構成し、グループへのメンバーシップを管理します。
各ロールの出力例:
Bean プロバイダー: TestBean.java
ejb-jar.xml
/li>Application Assembler: Deployer がターゲット環境のセキュリティー・ドメインにマップする必要があるすべての論理ロールをリストします。
/li>
ejb-jar.xmlDeployer (jboss 4.2.3-GA env): セキュリティ ドメインを作成し、エンタープライズ アプリケーション
login-config.xml のプリンシパル レルムを割り当てます。システム管理者: エンタープライズ アプリケーションを使用したい app_user DB テーブルに存在するユーザーがロール ADMIN を持っていることを確認します。
誰でもより完全な例を挙げることができますか? または、不足している可能性があるものを自由に追加したり、指定された例で間違っている可能性があるものを変更したりしてください。セキュリティ フローの完全な例は、EJB を学習している多くの人や、Oracle Certification Expert 1Z0-895 を受験したい人にとって役立ちます。