問題タブ [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.
java - Apache shiro の暗黙のアクセス許可
ユーザーにアクセス許可がuser:edit:1
あり、アノテーション駆動型を使用している場合、 @RequiresPermissions("user:edit")
shiro が例外をスローするのはなぜですか? その許可は、彼らが持っているという事実によって暗示されるべきではありませんuser:edit:1
か? 私が置く@RequriesPermissions("user:edit:1")
とうまくいきますが、操作のコンテキストではまだ1が何であるかがわからないので、後でメソッドでチェックされますが、そうでない場合はメソッドに入らないようにしたいと思いますuser:edit
パーミッションを持っています。
java - Spring MVC、RESTful サービス、Apache Shiro 戦略
ユーザーがサーバー上の自分の情報にアクセスできるようにするために REST API を必要とするプロジェクトに取り組んでいます。Spring MVC を使用してシステムを動作MappingJacksonJsonView
させ、必要に応じて JSON を返すようにしました。
システムにセキュリティを組み込みたいと考えています。まず、ユーザーが自分自身を認証し、リソースにアクセスするための正しいアクセス許可を持っていることを確認し、次に、ユーザーが公開されているアクセスのみを許可するように、データを十分にきめ細かく制御したいと考えています。リソースの一部、またはリソース全体に対する適切なアクセス許可がある場合。
たとえば、次のようになります。
シナリオ A:ユーザー A は、メッセージのリスト、名前、電話番号にアクセスしたいと考えています。その後、彼らは認証され、彼らの許可により、彼ら自身のすべての情報にアクセスできるようになります.
シナリオ B:ユーザー A はユーザー B の電話番号にアクセスしたい - したがって、A にはその部分の情報にアクセスする権限がないため、応答でユーザー B のメッセージのリストを除外します。
- Q1: Apache Shiro と Spring MVC を使用してこれを行うための適切な方法はありますか?
- Q2:他の誰かがこれをどのように達成したかについて、例やチュートリアルへのリンクを持っている人はいますか?
- Q3: Shiro を使用して、この種のきめ細かな制御を許可するには、どのようなアクセス許可スキームが最も効率的ですか?
私はこれまで Shiro と仕事をしたことがありませんが、例を試したりドキュメントを読んだりすると、これは可能であり、Shiro がソリューションに最適であるように見えます。しかし、私は他の解決策を受け入れています。
編集:解決策の 1 つは、Shiro と Jackson でこれが可能かどうかはわかりませんが、POJO でパブリックまたはプライベートとしてマークできるプロパティに注釈を付けることです。または、さらに良いことに、それらにアクセスするために必要な許可でそれらをマークします。次に、Jackson がオブジェクトの JSON 表現を出力すると、現在のプロパティのアクセス許可を調べて、その注釈からプロパティを出力するかどうかを決定できます。
facebook - Cookie ベースまたは Facebook ユーザーの認証に Shiro を使用するにはどうすればよいですか?
私の Web アプリケーションでは、ユーザー登録/ログインがありません。私が持っているのは、ユーザーが Cookie に基づいて初めてサイトにアクセスしたときに、ユーザー アカウントが自動的に作成されることです。この目的で Shiro を使用してそのようなユーザーを認証するにはどうすればよいですか (また、他の Web セキュリティ機能も利用できますか)?
ユーザーが Facebook 接続経由でログインすることを選択した場合、このシナリオでどのように Shiro を使用できますか?
java - Apache Shiro に必要なデータベース テーブルは何ですか?
Realm に Apache Shiro と MySQL を使用したいと考えています。Shiro が作業するために必要なテーブルとフィールドは?
java - shiroを使用したパスワードのハッシュとソルト
apache shiroでは、デフォルトのハッシュ実装は次のとおりです。
それがどのように塩を最初に置くかに注意してください。ハッシュがパスワード+ソルトであり、ソルト+パスワードではないレガシーシステムに対して認証する必要があります
私は現在、このメソッド呼び出しの外でconcatを実行しており、saltにnullを渡しています。このメソッドをサブクラス化してオーバーライドする以外に、私がしなければならないことよりも良い方法はありますか?
java - HTTP 認証サーバー ライブラリ
Basic または Digest Http 認証を検証するための Java ライブラリはありますか? Spring Security は両方を提供しますが、Apache Shiro には Basic しかありません。
これを実装するのに役立つライブラリ (Spring のコピー アンド ペースト クラス以外) はありますか?
ありがとう。
java - Javaで行レベルのセキュリティを実装するには?
現在、認証/承認フレームワークを評価しています。
Apache Shiro は非常に優れているようですが、行レベルのセキュリティ機能がありません。
たとえば、データベースには、特別な権限を持つユーザーのみが表示およびアクセスできる特別な行がある場合があります。不必要な往復を避けるために、現在、SQL クエリを変更して認証データと結合し、現在のユーザーに表示される行のみを取得します。
しかし、この概念は私には「正しい」とは思えません。なぜなら、ビジネス コードと、互いに直交し、独立している必要があるセキュリティ関連のコードを混在させているからです。
- どのようなソリューションが利用可能/可能ですか?
- 行レベルのセキュリティをどのように実装しますか(特に jpa と組み合わせて) ?
アップデート:
ターゲット データベースは主に Oracle 10g/11g
ですが、大きな欠点がなければ、データベースに依存しないソリューションをお勧めします。
java - JAAS認証チェックをShiroに委任するにはどうすればよいですか?
オブジェクトに基づく認証と承認を必要とするサーバー側アプリケーションを開発しています。私はShiroのシンプルさが好きですが、JAASとの互換性のために、基礎となるメカニズムとしてApacheShiroを使用するLoginModuleを作成しました。
しかし、私の問題は、JAAS認証チェックをShiroに委任する方法が見つからなかったことです。どうすればこれを達成できますか?
grails - GrailsShiroSecurityに関するチュートリアルが必要です
ちょっとすべて私はいくつかの例を使用してそれらを使用する方法、grailsshirosecurtyのすべての側面を示すいくつかの良いチュートリアルが必要です。grailsサイトで説明されているチュートリアルはすでに読んでいますが、例を含むチュートリアルが必要です。友達を助けてください...
mいくつかの肯定的な応答を待っています。
grails - Grails shiro セキュリティでアクションを制限する方法
.Controller に 2 つのメソッドがあることを教えてください。1 つはログイン、2 番目はログアウトです。私のDBで定義された1つのロール「ユーザー」と、そのロールを持つユーザーがいます。今私がやりたいのは、その人はログインできますが、ログアウトボタンにアクセスできませんでした. そのユーザーがログアウトできないようにする許可/制限を追加するにはどうすればよいですか。