問題タブ [picketlink]
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 - JPA を使用する場合、ユーザーの役割は picketlink のテーブルのどこに保存されますか?
永続化のために JPA (Postgresql を使用) でPicketlink ( 2.6.0.Final ) を使用しています。また、次の基準で初期化子を実装しました。
war
私をWildflyにデプロイした後、構成されたpostgresqlデータベースにユーザーが作成されているのがaccounttypeentity
テーブルに表示されます。IdentityQuery
そして、通常の JPA アプローチ (ルックアップ経由) を使用して、これらのユーザー アカウントをクエリして見つけることができます。
問題:
PL を使用して Restful API (JAX-RS を使用して実装) を保護しています。エンドポイントの呼び出し元にログイン セッションがあるかどうか、および関連するユーザー アカウントに必要なロールがあるかどうかを確認するためのカスタム アノテーションで各エンドポイントを装飾します (各エンドポイントは必要なロールをアノテーションの一部として渡します)。
さて、問題は、ユーザーがログインしているidentity.isLoggedIn() == true
場合でも、このユーザーが必要なロールで初期化時に作成したユーザーの 1 つである場合でも、このユーザーが必要なロールを持っているかどうかを確認する呼び出しが失敗することです! 本質的なコードは次のとおりです。
また、カスタム アノテーションの定義全体は次のとおりです。
だから、私は少しごまかして、3 つの質問を (1 つに) 提示します。
- picketlink が、作成したユーザーに割り当てたロールを保持していることを実際に確認するにはどうすればよいですか?
- これらの割り当てられたロールは、データベース (または他の場所) のどこに保存されているので、確認できますか?
- ユーザー ロールを間違った方法でチェックしている場合 (私のコードを参照)、どうすれば修正できますか?
security - picketlink SAML 認証を使用した Wildfly の HTTP リファラー情報を含む監査ログ
Picketlink 2.7 で WildFly 8.2.0 を使用しています
SAML HTTP POST 認証で正常に実行されるアプリケーションをデプロイしました。ログイン失敗、ログイン成功、ログアウト失敗、ログアウト成功の情報を含む監査ログを作成する必要があります。すべてのレコードについて、発信元アドレス (HTTP Referer ヘッダー) を特定する必要があります。
試しPicketLinkAuditProvider
てみましたが、ログに記録されますが、すべての詳細が含まれているわけではありません。も試しましたorg.jboss.security.audit.providers.LogAuditProvider
が、それは提供しますSource=org.wildfly.extension.undertow.security.AuditNotificationReceiver;message=UT000030
コードを見に行ったAuditNotificationReceiver
ところ、必要な情報が飲み込まれていることがわかりました。
正しい方向に進んでいるかどうかを理解するのに助けが必要です。
私が正しい方向であれば、カスタムの AuditNotificationReceiver を Wildfly セキュリティ サブシステムに提供することは可能ですか。
wildfly-8 - J2EE7 での Web アプリケーションのセキュリティ
Seam 2.2 アプリケーションを Java EE 7 プラットフォームに移行しています。
@Restrictアノテーションの代替を探しています。
アプリケーション プラットフォームとして Wildfly 8.2 を使用しています。
ただし、パッケージ化されたバージョンの picketlink にはこれらの注釈が見つかりません。これらをCDI環境で動作させる方法について誰か教えてもらえますか? 例えばMavenの依存関係?
java - 複数のアプリケーション用の PicketLink の単一インスタンス
私の意図は、Atlassian がCrowdで行ったことと同様のことを PicketLink で実装することです。
より詳細には、1 つの PicketLink インスタンスで認証、承認、SSO、および IdM サービスを複数の Java EE アプリケーションに提供したいと考えています。ここでのポイントは、JPA/LDAP 構成、カスタム IdM モデル、およびカスタム オーセンティケーター (上記のすべてがクライアント アプリケーション間で共有される) のための単一の場所を用意することです。
私がドキュメンテーションから学んだ限りでは、PicketLink はすぐに使えるものではありません。PicketLink API を使用するクライアント アプリケーションを想像しますが、実際の呼び出しは RMI/Hessian/REST などを介してマスター PicketLink インスタンスにプロキシされます。このアーキテクチャが実行可能かどうかについての専門家の意見や、その他の批判や提案をお待ちしています。
jpa - 既存の JPA エンティティを PicketLink にマップする方法
Seam 2 アプリを CDI に移行し、セキュリティのために PicketLink を使用しようとしています。すべての読み取りと調査の後、すべての例で、PicketLink モデルとバックエンド エンティティが1 対 1 でマッピングされているようです。たとえば、Account から AccountEntity へ、Partition から PartitionEntity へ。アイデンティティ モデルを表すエンティティが既に配置されているため、それらを PicketLink にマッピングしようとしています。ここに私が持っているものがあります:
PicketLink の単一の ID モデル (ステレオ タイプのユーザーなど) を表す 2 つのエンティティ (およびスーパー クラス)。
これに基づいて、 IdentityType id が String ではなく Long である理由に基づいて、次の場所に新しいエンティティを追加しようとしました。
注釈クラスとモデル クラスを使用して、いくつかの方法を試しました。しかし、IdentityManager.add(myUserModel) を使用すると、すべてのエンティティを設定することができません。これは可能ですか?
java - JBAS011048: WildFly 8.1.0 を使用して picketlink-authorization-idm-jpa-with-subsystem でコンポーネント インスタンスを構築できませんでした
サンプルpicketlink-authorization-idm-jpa-with-subsystem、タグ v2.7.0.Final ( https://github.com/jboss-developer/jboss-picketlink-quickstarts/tree/v2.7.0 .Final/picketlink-authorization-idm-jpa-with-subsystem ) を WildFly 8.1.0 で使用すると、次のエラーが発生します。
これを解決する方法は?
ありがとう
java - WildFly への展開時の PicketLink ClassNotFoundException org.picketlink.Identity
WildFly サーバー上の Web アプリケーションで PicketLink API を使用したいと考えています。PicketLink クイックスタート「picketlink-authorization-idm-jpa」を基本的な実装として使用し、必要に応じて拡張しようとしました。しかし、(変更されていない) アプリケーションをサーバーにデプロイするときは常に、エラーが発生し、ClassNotFoundException org.picketlink.Identity
それを解決する方法がわかりません。誰かが同じ問題を抱えていて、その解決策を見つけましたか? Eclipse Mars と JBoss WildFly サーバー 8.2.0 および 9.0.1 を使用しています。