問題タブ [shiro]

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.

0 投票する
1 に答える
1151 参照

grails - Grails Shiro プラグイン: 私の理解を確認する

いくつかのドキュメントを読んだ後、shiro プラグインの使用を開始する方法について少し曖昧です。テーブルと UI プラグインがほとんどないため、Nimble は使用しないことにしました。

独自のテーブルを使用して、ワイルドカード レルムを使用して shiro プラグインをセットアップしました。拡張性に優れているため、パーミッション ベース (ロール ベースではなく) のアクセス制御を使用する場合があります。では、その手順です。

  1. サブジェクトに許可文字列を割り当て、データベースに保存します
  2. isPermitted、hasPermission (または GSP の関連タグ) でアクセス許可を確認します。

さて、
1. フィルターを介してアクセス制御を使用するのはいつですか?
2.コントローラーに挿入されたクロージャーがあり、そこでアクションの許可を定義できますか? 各コントローラーの accessControl 静的クロージャーについてどこかで読みましたが、文書化されていないようです。
3. (何か、投稿など) の作成者だけがそれを削除できるような典型的なアクセス制御シナリオを作成するにはどうすればよいですか? 可能性の 1 つは、ユーザー ID に基づいてアクセス許可文字列を作成して永続化することです。アクセス許可を確認するには、オブジェクト (投稿) を取得し、ユーザー ID を取得して件名と比較します..少し複雑に思えます..簡単な実装はありますか?

どうもありがとう..バブ。

0 投票する
2 に答える
475 参照

grails - A shiro プラグインを使用してユーザーに広告を表示する方法

私は grails アプリケーションのセキュリティに Shiro プラグインを使用しています。私のアプリケーションには既にユーザーがいます。リレーションシップを使用するか、それともユーザー クラスが現在 shiro ユーザー クラスのみであるべきか??

0 投票する
2 に答える
20191 参照

java - GrailsまたはJavaアプリケーションで「誰がオンラインか」を簡単に実装するには?

grails でコミュニティ Web サイトを構築しており (セキュリティと認証システムに Apache Shiro を使用)、「誰がオンラインか?」機能を実装したいと考えています。

この URL http://cksource.com/forums/viewonline.php (この URL にアクセスできない場合は、以下のスナップショットを参照してください) は、私が達成したいことの例を示しています。

最も簡単な方法でそれを行うにはどうすればよいですか?Grails または Java に既存のソリューションはありますか?

ありがとうございました。

スナップショット:誰がオンライン ページ http://www.freeimagehosting.net/uploads/th.2de8468a86.png のスナップショットまたはこちらを参照してください: http://www.freeimagehosting.net/image.php?2de8468a86.png

0 投票する
3 に答える
7027 参照

java - Apache Shiro 構成の問題を伴う Web アプリケーションのセキュリティ

私は Shiro を使用して Web アプリケーションを保護することにしました。Tomcat アプリ サーバー、maven、休止状態、および jsf を使用します。今、Shiro を設定しようとしましたが、いくつか問題がありました。

ここに私のファイルがあります:

---POM.xml---

---web.xml---

サーバーにデプロイすると、次のエラー メッセージが表示されます。

私の間違いはどこですか?他にも何かを実装する必要がありますか?助けてくれてありがとうスヴェン


追加

問題について少し考えてみました。キーは、領域を設定することだと思います。しかし、このフレームワークをテストするために、データベースや LDAP を追加したくありません。簡単な解決策が必要です...


アップデート

次のように web.xml を変更しました。

しかし、エラーは同じままです:-/

0 投票する
1 に答える
2044 参照

java - Apache shiro: authc.loginUrl が機能しない

Shiro を次のように設定しました。

ご想像のとおり、'welcome.xhtml' には私のログイン フォームが含まれています。アプリケーションにログインせずに overview.xhtml にアクセスしようとすると、アプリケーションに存在しない「login.jsp」にスローされます。

さらに、次を追加すると:

shiro config の主要部分に tomcat を起動すると、このエラーが発生します。

私の間違いですか?乾杯...


MAVEN POM 部分:

0 投票する
3 に答える
428 参照

security - Grails + セキュリティ保護アプリケーション

私はレガシーgrailsアプリケーションに取り組んでいます。

このようなテーブルがいくつかあります

特定のユーザーがアセットにアクセスしたいときに、それが適切な enterprise_id を持っていること (つまり、ユーザーがアセットと同じエンタープライズに属していること) を検証したいと考えています。

たとえば、

Microsoft のユーザーである John と Charles (Oracle のユーザー) のうち、Charles のみが Java 仮想マシンにアクセスできる必要があります。

春のセキュリティについて読んでいますが、役に立たないようです。ユーザー認証、パスワード、ロールなどしか表示されません (もちろん、間違っている可能性もあります)。これらはすでに保護されており、正常に機能しています。現時点では、フィルターを検討していますが、それらを機能させることができず、独自のセキュリティを展開することはできません (この質問を参照)。これは正しくないようです。

何かご意見は?Spring Security は進むべき道ですか? シロ?

前もって感謝します

0 投票する
1 に答える
776 参照

java - Shiro パーミッション文字列が機能を拒否しましたか?

私は grails に shiro プラグインを使用し、ユーザーが実行時に権限を追加できるようにしています。私のコントローラーには、index、list、edit、create、save、update、search、delete などの多くのアクションがあります。コントローラー名が「foo」であるとします。単純な foo コントローラーの許可文字列は foo:* であり、これを持っている全員を意味します。許可は、foo コントローラーのすべてのアクションにアクセスできます。ただし、削除アクションのみを拒否する場合は、次のようにアクセス許可文字列を構成する必要があります foo:index,list,edit,create,save,update,search これはうまくいきますが、コントローラーにアクションがある場合、アクセス許可文字列は非常に長くなりますこれより。この foo:[delete] add 角括弧などのような構文があれば、削除アクションのみを拒否して残りを許可する方が良いでしょう。

前もって感謝します。

0 投票する
1 に答える
442 参照

grails - NetbeansでGrailsバージョンをアップグレードし、Shiroセキュリティを追加する

私は、アプリケーションがgrails1.2.2を使用しているプロジェクトに取り組んでいます。

今度は、現在のプロジェクト(Netbeansを使用)にShiro Securityを追加したいと思います。そして、Grailsの分野に非常に慣れていません。

それで、現在のプロジェクト(NetBeans)にshiroプラグインを追加するにはどうすればよいか知りたいと思いました。また、現在のプロジェクトをバージョン1.3.3または1.3.4にアップグレードする必要があるかもしれません。

どんな助けでも大歓迎です...

ありがとう。

0 投票する
1 に答える
895 参照

maven - Grails の Quartz フレームワークと競合する Shiro プラグイン

私は、grails プロジェクトで Quartz-all-1.7.3 という lib を使用して Quartz フレームワークを使用しています。

次に、プロジェクトに shiro プラグインをインストールする必要があります。そのため、プロジェクトに shiro プラグインをインストールするたびに、正常にインストールされます..

しかし、プロジェクトを再度実行するたびに、次のようにコンパイルエラーが発生します。

そのため、shiro プラグインを長い間調べたところ、プラグインとの依存関係があることがわかりました。その依存関係の 1 つが shiro-quartz-1.0.0-incubating.jar です。そのため、pom.xml ファイル内に次の行コードが表示されます。

pom.xml の行によると、quartz 依存関係のあるバージョンのタグはありません。つまり、プロジェクトに shiro がインストールされるたびに、同時に maven を使用して 1.8.3 などの quartz の最新ライブラリが抽出されます。

その中でquartz 1.8.3、クラス CustomJDBCDelegate のメソッド updateSchedulerState が version から変更されましたquarts 1.7.3

今の問題はquartz-all-1.7.3、既存のプロジェクトで変更できず、プロジェクトでも Shiro プラグインを使用したかったことです。

そのため、shiro がquartz-1.7.3maven を使用して最新のバージョンではなくバージョンを取得できるように、何らかの解決策が必要です。

どんな助けでも大歓迎です...

ありがとう...

0 投票する
6 に答える
12709 参照

grails - GORM createCriteria と list が同じ結果を返さない: どうすればよいですか?

セキュリティ フレームワークにNimbleShiroを使用していますが、GORM のバグに遭遇しました。それはそう :

10 人のユーザーを返しますが、9 人のユーザーをUser.list(max: 10) 返します。

さらに調査した結果、管理者には2つのロールがあるため、同じユーザー(管理者)createCriteria が2回返されることがわかりました!!! (冗談じゃない)。

複数のロールを持つユーザーは、createCriteria呼び出しで2 回返され、インスタンスUser.listが返されるmax-1ようです (つまり、10 ユーザーではなく 9 ユーザー)。

10 人の一意のユーザーを返すには、どのような回避策を使用できますか?

ページネーションを正しく使用する方法がないため、これは非常に面倒です。


私のドメインクラスは次のとおりです。