問題タブ [declarative-authorization]
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.
ruby-on-rails - declarative_authorization で機密属性を保護する
declarative_authorizationを使用して役割ごとに属性を保護するクールな方法は何ですか? たとえば、ユーザーは自分の連絡先情報を編集できますが、役割は編集できません。
私の最初の傾向は、さまざまなシナリオに対して複数のコントローラー アクションを作成することでした。保護された属性の数が増えるにつれて、これがいかに扱いにくくなるかがすぐにわかりました。ユーザー ロールに対してこれを行うことは 1 つのことですが、複数の保護された属性を想像できます。コントローラーのアクションとルートを大量に追加するのは適切ではありません。
私の 2 番目の傾向は、特定の機密属性に関するアクセス許可を作成し、フォーム要素を declarative_authorizations によって提供される View ヒーパーでラップすることでした。ただし、これのモデルとコントローラーの側面は、私の頭の中では少し曇っています。提案は素晴らしいでしょう。
declarative_authorizations を使用して役割ごとに属性を保護する最善の方法についてアドバイスしてください。
ruby-on-rails - レールのヘルプdeclarative_authorization
このルールを強制することはできません...誰でもこのアクションを実行できます。
これが私のルールです
これが私のコントローラーのアクションです
このルールが正常に機能しているため、正しく設定されていることはわかっています
ルール定義のエラーはどこにありますか?
助けてください
ruby-on-rails - without_access_control を使用するより簡潔な方法
モデルのセキュリティに declarative_authorization を使用するアプリに取り組んでおり、フィクスチャを構築していて、認証フレームワークを通過する必要がない/必要としないテストがたくさんあります。現在、私は以下のコード スニペットのようなものを使用していますが、これはかなり一般的なタスクになるため、同じ目標を達成するためのより良い、またはより簡潔な方法があるかどうか疑問に思っていました。
ruby-on-rails - declarative_authorizationif_attributeのユーザーに対する複数の条件
私には4つの異なるレベルのアクセスがあります。管理者、パートナー、従業員、クライアント。管理者、パートナー、および従業員は、クライアントに対する管理アクセス権を持っています。基本的に私が行ったことは、クライアントがベンダー(パートナー)にドキュメントをアップロードできるRailsアプリを作成することです。クライアントレベルのアクセスを除いて、すべてがうまく機能します。私には2つのコードがあります。パートコードとクライアントコード。パートナーは、ファイルのpartercodeフィールドがパートナーのパートナーコードと等しいファイルのみを表示できます。これは問題なく機能します。ただし、クライアントは、パートナーコードが一致し、クライアントコードが一致するファイルのみを表示できます。以下は私のクライアントセクションです。動作しているのは、クライアントがパートナーコードファイルのみを表示できるようになっていることですが、パートナーに属する他のクライアントを表示するように設定されています。(URLに番号を入力して)。これが問題になるとは思えませんが、
ruby-on-rails - declarative_authorizationを使用して、モデルの結果を制限します
Railsプロジェクトのアクセス許可に宣言型承認gemを使用しており、ユーザーのアクセス許可に基づいてモデルからの出力を制限しようとしています。
私の省略された認証ファイルは次のようになります。
私の人々のモデルでは、私はこのようになりたい静的メソッドを持っています
with_permissions_toまたはpermited_toを使用したドキュメントのAuthorizationInModelオブジェクトを使用してこれがサポートされているようです。ドキュメントに基づいてこれらの関数を使用する方法や、現在のモデルに対する現在のユーザーの特権のリストを返す方法を理解できませんでした。
何か案は?
ruby-on-rails - Decl_auth は、私のゲストロールが私が許可したことを実行することを許可しません - Rails 3
私は認証に Decl_auth を使用していますが、これが私の中にありますconfig/authorization_rules.rb
:
コメントを追加しようとすると、HTTP 認証プロンプトが表示され、ログに次のように表示されます。
何か案は ?
私のコメントコントローラー、create
アクションは次のようになります。
ruby-on-rails - Deviseログイン時にパラメータを渡す方法
Deviseサインインプロセス中にパラメータを渡すにはどうすればよいですか?
ユーザーのコレクションがあり、それぞれに独自のプロファイル ページがあります。アプリケーションのすべてにアクセスできる管理者でない限り、自分のプロファイル ページは表示できるが、他のユーザーのプロファイル ページは表示できないようにしたい。
Users コントローラーを作成し、次のコードをコントローラーの先頭に適用しました。ID による検索をユーザー名に置き換えたので/users/username
、プロファイルにアクセスするには:
そして、routes.rb で次のように指定しました。
ユーザーがアクセス http://appli.cat.ion
すると、ログイン資格情報の入力を求められroot_path
、ユーザー コントローラーの表示アクションである にリダイレクトされます。id
サインイン プロセス中にパラメーターを渡すことができない限り、エンドレス リダイレクト ループが発生します。この問題を解決するために Devise に何かありますか?
次の 2 つの Devise メソッドが役立つと思います。
と
私はafter_sign_in_path
次のようにオーバーライドしました:
これにより、ユーザーがログインし、プロファイル ページにリダイレクトされますが、次のように戻っnil
た場合にのみ、目的の効果が得られます。stored_location_for
(http)://appli.cat.ion/
繰り返しますが、私の目標は、ユーザーがサインインしている場合に直接移動した場合、ユーザーをプロファイル ページにリダイレクトすることです。ユーザーがナビゲートした場合、ユーザー(http)://appli.cat.tion/otherresources
をサインインさせ、要求したページにリダイレクトします。私が戻るnil
とstored_location_for
、ユーザーは何があっても常に自分のプロフィール ページにリダイレクトされます。これは良くても望ましくなく、最悪の場合は使用できません。アプリケーションのサインインに直接移動すると、stored_location
が返さnil
れ、サインインするとプロファイル ページにリダイレクトされると思いますが、root_path
.
c# - Role=""のPrincipalPermissionは常に失敗します
asp.net3.5Webフォームアプリでフォーム認証を使用しています。
を実装するカスタムクラスがありますIIdentity
。
メソッドをで装飾しました[PrincipalPermission(SecurityAction.Demand, Role = "administration")]
。
私の問題は、そのロールのユーザーとしてログオンしている場合でも、セキュリティ例外が発生することです。これは、私が試した役割/ユーザーのすべての組み合わせで発生しました。
ただし、[PrincipalPermission(SecurityAction.Demand, Name = "admin")]
認証を使用すると、期待どおりに機能します。
私のGetRoles()
メソッドは正しいロール文字列を返すと確信しています。
私が間違っていることはありますか?
ruby-on-rails - has_permission_on with Declarative Authorization、非属性条件
アプリでセッション変数が設定されている場合、特定のアクションに承認を与えたいです。これを行う方法がわかりません。何かのようなもの:
この基本的なタスクを達成する方法がわかりません。どんな助けでも感謝します。
ruby-on-rails-3 - Declarative_Authorizationを持つセル
gemsセルとdeclarative_authorization(Deviseと共に)を使用して、permited_toを含める方法を理解しようとしていますか?セルテンプレートに。これまでのところ、これをセルに追加しましたCell(Deviseはヘルパーとして機能します):
しかし、declarative_authヘルパーモジュールが次のコードを使用しているという事実に爆撃されています。
そして明らかにこれは
アップデート:
もう少し考えてみると、これがCellsで機能するかどうかはわかりません。Declarative_authは、ルールの基礎となるコントローラーを必要としますが、Cellsはそのコントローラーとは何の関係もありません。コントローラへの参照をCellsに渡さない限り、この2つは互換性がないように見えますか?細胞は行く方法ではないと考え始めています。