問題タブ [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.
grails - Grails で ShiroUser のパッケージを指定する
非常に基本的な質問です。(shiro-quick-start を実行するときに) ShiroUser クラスと ShiroRole クラスを配置するパッケージを指定する方法はありますか? デフォルトでは、それらは grails-app/domain/ に配置されていますが、/grails-app/domain/com/bla/bla に配置したいと考えています。これらのクラスを移動しようとすると、Netbeans のリファクタリング ツールは役に立ちません。
ありがとう。
gwt - SHA1 ハッシュの小さな違い
私が取り組んでいるプロジェクトでは、セキュリティ フレームワークとして Apache Shiro を使用しています。パスワードは SHA1 でハッシュされます (ソルトなし、反復なし)。ログインはSSLで保護されています。ただし、アプリケーションの残りの部分は SSL で保護されていません。このコンテキスト (SSL なし) では、ユーザーがパスワードを変更できるフォームが必要です。そのまま送信するのは得策ではないため、クライアントでハッシュしてからサーバーに送信する必要があります。クライアントは GWT (2.3) ベースであるため、bouncycastle のコードを使用するこのライブラリhttp://code.google.com/p/gwt-cryptoを試しています。ただし、多くの場合 (すべてではありません)、両方のフレームワークによって生成されるハッシュは 1 ~ 4 文字 (?) 異なります。たとえば、「happa3」は次のようにハッシュされます
両方の実装で、「happa」だけがハッシュされます
Shiroの実装によって、そして
gwt-crypto 実装による (23 番目の文字が異なります)。「正しい」/標準のSHA1ハッシュがあるかどうか、ライブラリの1つにバグがあるのか 、それとも私の使用法に欠陥があるのか 疑問に思います。私の最初の考えの 1 つは、さまざまなトランスポート メカニズム (RPC と Post) によるさまざまなエンコーディングまたは奇妙な変換に関するものでした。私の知る限り (そして私を最も困惑させているのは)、SHA1 ハッシュは、わずか 1 ビットの違いがあれば、高い確率で完全に異なるはずです。したがって、異なるエンコーディングはここでは問題になりません。ハッシュのためにクライアント(GWT)でこのコードを使用しています:
そして、これはサーバー(Shiro)で:
どの afaics が舞台裏で非常によく似た処理を行っているか (ソース コードを簡単に確認できます)。ここで明らかなことを見逃しましたか?
編集: GWT コードが何らかの理由で (つまり、開発モードで) ネイティブに実行されず、サイレントに失敗するようです (ただし、コンパイルは行われます)。その理由を突き止めなければならない...
編集 (2): "int val = sha1.doFinal(result, 0);" 問題を起こす行です。つまり、存在する場合、コード全体がネイティブ (JS) で実行されず、開発モードでのみ実行されます (結果が間違っています)。
grails - grails Web アプリケーションで SSO をサポートするための Apache Shiro/Active Directory 統合
認証目的でApache Shiroを使用するgrails Webアプリケーションに取り組んでいます。現在、このアプリケーションに SSO と Active Directory の統合を実装するよう依頼されています。私は LDAP/AD を初めて使用するので、適切に実装するのに苦労しています。
いくつかのウェブサイトで言及されているように、次のコマンドを実行して ShiroLdapRealm.groovy ファイルを生成しました。
次に、grails-app/conf/Config.groovy に LDAP の構成プロパティーをいくつか追加しました。
しかし、アプリケーションで現在ログインしている Windows ユーザーを取得し、この生成された ShiroLdapRealm に対して認証する UsernamePasswordToken を提供する方法がわかりません。ユーザーが Windows Active Directory から来る shiro で SSO エクスペリエンスを提供したいだけです。これに関する適切なドキュメントを見つけることができませんでした。
また、いくつかの投稿で言及されているように、ShiroLdapRealm と ActiveDirectoryRealm のどちらを使用するかについても混乱しています。これら2つの違いは何ですか?いつ使う?
誰でもこれについて私を助けてくれませんか。
前もって感謝します。
アサン
grails - プラグイン [shiro-1.1.3] のインストール中にエラーが発生しました: 削除できません
Grails 2.0.0.M1 + shiro-1.1.3
grails> install-plugin shiro
| | プラグインの JAR 依存関係を解決しています..
ログを削除...
| | プラグインがインストールされました。
grails> コンパイル --staktrace
| | エラー プラグイン [shiro-1.1.3] のインストール中にエラーが発生しました: ファイル D:\TZProfile.grails\2.0.0.M1\projects\Vote\plugins\shiro-1.1.3\lib\shiro-co re を削除できません-1.1.0.jar
| | Error Error running script compile --staktrace: org.codehaus.groovy.grails.cli .ScriptExitException (完全なトレースを表示するには --stacktrace を使用してください)
grails - Grails-ShiroSecurity-手動でユーザーにログイン
私は比較的簡単なことをしようとしています:ユーザーを手動でログインします。FacebookGraphプラグインを使用してFacebookに接続しています。ユーザーがFacebook経由でログインした場合、私は彼のIDを取得し、ShiroSecurityで彼を認証したいと思います。もちろん、そのような些細なこと
動作しません。私はウィキでコードを見つけました、それはトリックをするはずです:
ただし、動作しません。ShiroSubjectがnullであるというlog.debugメッセージでauth/loginにリダイレクトされます。これは、サービスでこのコードを呼び出したためかもしれません。これを機能させる方法はありますか?
アップデート:
grails - Shiro のタグ「isLoggedIn」と「authenticated」は同じ意味ですか?
私は Grails と Shiro の両方を使い始めたばかりで、既存のプロジェクトに Shiro を追加することを検討しています。
isLoggedIn
Shiro のタグとタグが同じことを意味するかどうか疑問に思っていますauthenticated
(つまり、常に同じ結果が生成されます)。
Grails Shiro Plugin ページでは、次のように提案されているようです。
タグ
<shiro:isLoggedIn>
と<shiro:authenticated>
認証済みユーザーの<shiro:user>
チェック、タグは既知のユーザー (認証済みまたは記憶済み) をチェックし、タグ<shiro:remembered>
は記憶済みユーザーのみをチェックします。
しかし、それはほとんど詳細な説明ではなく、それらが同じである場合になぜ両方が存在するのかを説明していません.
spring-mvc - ini ファイルを使用した Spring MVC と Shiro の構成
Spring MVC と Apache Shiro で環境を整えようとしています。shiro.apache.org で言及されている記事をフォローしています。
web.xml で Shiro Filter として Spring の DelegatingFilterProxy を使用しています。
現在のフィルタリングは、次を使用して行われます。
質問は、セキュリティ設定を定義する shiro.ini ファイルをどのように使用すればよいですか?
spring-mvc - Shiro Spring JDBCRealm 認証と認可
考え
Shiro を Security Framework として Spring MVC を使用して Web アプリケーションを開発する必要があります。
要件
データベースに保存されるユーザー名、パスワード、ロールなど。データベース スキーマ:
パスワードは、テーブルでハッシュ化およびソルト化する必要があります。
Web アプリケーションの Shiro Filter は、DeligatingFilterProxy
Spring の構成メカニズムを利用する必要があります
/login を除くすべてのリクエストは認証する必要があります。
認証が成功した場合、フレームワークは次の場所にルーティングする必要があります。/dashboard
すべての URL は、呼び出された Spring Controller によって処理されます。MainController
問題
上記の要件をどのように解決しますか? どの構成がどのファイルに入るのですか?
助けてください。
spring-mvc - @ControllerがログインページにリダイレクトするときにShiro+SpringMVCを構成する方法
私は、セキュリティ層としてApacheShiroを使用した典型的なSpringMVC+GWTアーキテクチャを使用しています。
問題:アプリケーションサーバーへのリクエストに使用されるプロトコルに関係なく、ページはリクエストの「X-Forwarded-Proto」ヘッダーで指定されたプロトコルで返される必要があります(したがって、アプリサーバーはHTTPリクエストを受信できますが、ヘッダーがHTTPSと言いますが、HTTPSを使用して応答する必要があります)。明らかに、Shiro-Springチュートリアルで指定された構成は、プロトコルとは関係がないため機能しません(login.jspは、要求で使用されたプロトコルを使用して返されます)。
考えられる解決策:
@Controllerを使用して、指定したプロトコルでログインビューにリダイレクトします。
shiro構成のloginUrlを/loginを指すように変更して、@controllerがそれをキャッチするようにします。
ただし、この構成では、同じログインページが表示されますが、myRealm(com.myapp.security.DBRealm)はまったくトリガーされず(つまり、資格情報はチェックされません)、ログインは常に失敗します。リダイレクトされたページがレルムへの「フック」を失ったようです。
私が間違っていることについて何か考えはありますか?