問題タブ [acl]
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.
design-patterns - オブジェクトに対する CRUD レベルのロック - 設計パターン
オブジェクトに CRUD レベルのロックを実装するための設計パターンを知っていますか。つまり、オブジェクトの 1 つのインスタンスに対して、操作 (作成、読み取り、更新、削除) ごとに異なるアクセス制御レベルを指定できるはずです。たとえば、人物 A はオブジェクト Z を読み取って更新することはできますが、削除することはできません。ユーザー B は、オブジェクト X、Y、および Z の読み取り、更新、および削除を行うことができます。
私の懸念は、大量のデータがある場合にどうなるかです。言い換えれば、私は効率的なものを探しています。
オブジェクトに対してこの種のアクセス制御を実装したことがありますが、それがどのように行われるかを知っています。実際にこのための何らかの設計パターンがあるかどうか疑問に思っています。
cakephp - cakephp acl aros_acos パラドックス
Auth コンポーネントと Acl コンポーネントを使用して CakePHP サイトに認証/承認の組み合わせを実装しようとしていますが、実装で奇妙なことが起こっています。適切な acos、aros、および aros_acos テーブルがあり、ある程度は機能しているようです。
私は自分の行動を次のようにマッピングしました:
$this->Auth->mapActions(array('read' => array('view'), 'update' => array('edit')));
私の acos テーブルは次のようになります。
- サイト
- 1.1 ページ
- 1.2 ユーザー
- 1.3 グループ
- 1.4 管理者
および aros テーブル:
- ユーザー
- 1.1 エディター
- 1.1.1 管理者
- 1.1.1.1 管理者名
- 1.2 レギュラーユーザー
ユーザー、編集者、および管理者はグループです。Admin_name は admins グループのメンバーである admin ユーザーであり、regular_user は users グループのメンバーです。
ここで、 aros_acos テーブルで、「ユーザー」グループに「ページ」の CRUD 権限を次のように与えると: 0 1 1 0 (これにより、読み取りと更新の権限が与えられます)、すべてが正常に機能します (少なくとも「ビュー」および「編集」アクション)。しかし、0 1 0 0 (読み取り権限のみ) を入力すると、'/' にリダイレクトされます。特に気づいたことの 1 つは、app_controller または少なくとも beforeFilter() 関数を呼び出していないことです。 app_controller.
さらに、ユーザーが crud にアクセスできない場合に $this->flash メッセージを送信して、ユーザーが「許可されていない」ことを知らせる beforeFilter() を作成しました (これを行う必要がありました)。 、 $this->Auth->authError が機能していないようです)。したがって、それを念頭に置いて、ユーザー グループの aros_acos テーブルを次のように書き換えます: 0 0 1 0 (更新のみのアクセス許可)。今回は、「表示」アクションにアクセスするとフラッシュ メッセージが表示されます (これは正しいです)。アクセス許可がないため)、「編集」アクションにアクセスしようとするとフラッシュメッセージも表示されます。
私は何かが欠けています、そして私は何がわかりません。私はこの質問を書きました。それを終える前に、自分で解決策を考え出すことを望んでいます...しかし運はありません。私はまだ何が起こっているのか分かりません。私はそれがいくつかのコントローラーのことだと思います.何かアイデアはありますか?
c# - C# - Windows ACL - 継承されたアクセス許可の適用
プログラムでフォルダー/レジストリ エントリにアクセス許可を割り当てる際に問題が発生しました。次のコードを使用して、継承権限を割り当てることができました。
これにより、管理者として作成したすべての子フォルダーにファイルのアクセス許可が正しく設定されます。ただし、dir
フォルダー自体にアクセス許可を設定するわけではありません。私は継承と伝播のためにかなりの数の順列をいじりましたが、喜びはありませんでした。
たとえば、私は持っています:
test ( %programfiles%\Test\SubFolder
) にフォルダを作成した場合、ユーザーには完全なアクセス許可が割り当てられていますが、 に対する完全なアクセス許可はありません%programfiles%\Test
。これは非常に面倒です。ユーザーに、Test ディレクトリに対しても何を行うにも完全なアクセス許可を与えたいからです。
レジストリのアクセス許可に関して同様の問題が発生していますが、1 つを解決できれば、未解決の問題の両方を解決できると思います。
これを解決する方法を知っている人はいますか?
よろしく
トリス
windows - サービスによって作成されたファイルに読み取り専用属性が設定されるのはなぜですか?
注: これは、この質問を完全に書き直したものです。私は以前、いくつかの ACL の問題を私が探している問題と混同していました。それがおそらく答えがなかった理由です。
標準のオープン/クローズ/書き込みルーチンを使用してログ ファイルを書き込む Windows サービスがあります (パイプからデータを読み取り、ログに記録します)。毎日午前 0 時に新しいログ ファイルが開かれます。システムは Windows XP Embedded です。
このサービスは、ローカル システム サービス (ユーザーに対して NULL を指定した CreateService) として実行されます。
サービスが最初に起動すると、ログ ファイルが作成され、問題なく書き込まれます。この時点ですべて問題なく、サービス (またはコンピューター) を問題なく再起動できます。
ただし、真夜中 (日が変わるとき) に、サービスは新しいログ ファイルを作成し、それに書き込みます。面白いことに、この新しいログ ファイルには「読み取り専用」フラグが設定されています。サービス (またはコンピューター) が再起動すると、サービスは書き込み用にファイルを開くことができなくなるため、これは問題です。
問題がすでに発生しているシステムからの関連情報は次のとおりです。
ログファイルを開く/作成するために使用するコードは次のとおりです。
ファイルが読み取り専用フラグを取得する方法を理解するのに本当に苦労しています。手がかりや方向性を教えてくれる人は誰でも、大歓迎です。
コンパイラは VC 6 です (ええ、わかっています。時代遅れなので面白くありません。NT 3.51 から XPE にアップグレードしたばかりであることに気付くまでは)。
c# - CommonAppDataPathディレクトリのC#でACLパーマを変更できません
そのため、BUILTIN \ Usersグループのアクセス許可を変更して、少なくともファイルシステムの変更アクセス権を持たせようとしています。残念ながら、以下のコードを使用しようとすると、変更されていないACLが生成されます。
変更されたレポートはすべての場合に当てはまりますが、フォルダーのプロパティでパーマを確認してもパーマは更新されません。
また、同様のコードを使用して、ディレクトリのACLをまだ持っていないSecurityIdentifierのアクセスルールを追加しようとしましたが、変更する代わりにAddAccessRuleだけを追加しました。新しいSecurityIdentifierがディレクトリのpermsリストに表示されましたが、指定したアクセス権がありませんでした。
管理者アカウントが所有しているEnvironment.SpecialFolders.CommonApplicationDataの専用ディレクトリへのアクセスを変更しようとしています。また、管理者としてACLを変更しようとしています。
上記のコードの何が問題になっているのか、またはネイティブの.NETクラスを使用してACLを設定する正しい方法につながるリソースを持っている人はいますか?
c# - XCopyのようなACL情報をコピーする
私たちは最近、世界中の途中で新しいドメインサーバーに移動することを余儀なくされました。これはそれほど大きな変化ではないように思われるかもしれませんが、頻繁に実行するプロセスの1つが、突然2秒のコマンドから5分のコマンドになりました。
理由?「テンプレート」ディレクトリ構造に基づいて、多くのディレクトリのアクセス許可を更新しています。
XCOPYは、同じ古い2秒のウィンドウでこれらの設定の大部分を更新できることを発見しました。もちろん、残りの設定は省略されます。
私が理解しようとしているのは、XCopyが.NETセキュリティクラスがネイティブに実行する必要があることをどのように高速化できるかということです。明らかに私は何かが欠けています。
ドメイン/ActiveDirectoryサーバーにping(または最小限のping)を実行せずにディレクトリのACL情報をコピーするための最良の方法は何ですか?
これが私が持っているものです:
php - CakePHPのユーザー管理、認証、ACLプラグイン?
私はCakePHPにかなり慣れていません。しばらくの間、レールを使用してきました。私の質問は、Cakeの優れたユーザー管理、認証、およびaclプラグインまたはコンポーネントを誰かが推奨できるかどうかです。
私はこれに出くわしましたが、2008年以降更新されていません。そうでない場合は、この種の設定に適した本/チュートリアルサイトをお勧めできますか?私は座ってこの種のことを自分で書くことができてうれしいですが、テスト済みのコミュニティプラグインを使用したいと思います。
乾杯
django - Djangoの役割ベースのビュー?
他の人がこれをどのように設計するかについてのいくつかのインプットを探しています。クラス(djangoグループ)ベースのビューを提供します。
たとえば、ユーザーのグループは、ユーザーがアクセスできるビュー/テンプレートを決定します。ユーザーのリンクバーが何で構成されるかを決定するために、関数を表示するためのパスをテーブルに格納することを考えています。フィルタ仕様を保存して、これらのテンプレートを埋める行を決定することもできます。
良い例は病院の看護ユニットです。1つのユニットの看護師は、病院全体の患者を診察する必要はありません。彼らは彼らの患者に会う必要があるだけです。同じユニットの医師は、それらの患者も診察する必要がありますが、はるかに優れた機能にアクセスできる必要があります。
これは、サードパーティのアプリケーションを介して行われましたか?そして、この問題にどのようにアプローチしますか?
ありがとう、ピート
ruby-on-rails - 構造とユーザー アクセスに関するアドバイス
わかりましたので、 acl9 を配置して機能させ、これまでのアプリ構造を以下に示します。
地域 (ある) 場所 (売上がある)。売り上げは重要ではありません。基本的には、各場所に表示される投稿だけです。
また、役割に基づいて制限および許可できる acl9 と統合されたユーザーもいます。
私がする必要があるのは、会社を作成し、特定の会社に対して作成されたユーザーに、その会社内の地域と場所へのアクセスのみを許可することです。次に、アクセス権が与えられた場所にのみアクセスできる、各企業が作成できるユーザーが必要になります。
私の質問は、作成されたユーザーを特定のセクションに動的に制限する方法がわかりません。つまり、管理者用のインターフェースです。いくつかのアプローチを想像できますが、最良のアプローチについてのアドバイスを探しています。
language-agnostic - アクセス制御リスト
今後のプロジェクトの (役割ベースの) アクセス制御リストを読んでいて、それがどのように機能するかを理解するのに苦労しています。
私が見た例では、コントローラー/モデルの特定のアクションへのアクセスの許可と拒否について常に話しています。例: グループ「訪問者」はread
投稿でき、「メンバー」は投稿できread
、edit
「管理者」は投稿できますcreate, read, update, delete
。
これらのことは、私には少しグローバルすぎるようです。私自身の状況(この例に合わせて調整)では、多数のグループがあり、それぞれがedit
特定のカテゴリ (またはその他の基準) に属する投稿のみを行うことができます。
私がそれを機能させるために考えることができる唯一の方法は、各カテゴリの投稿用に新しい ACO を作成することです。
そして、それらのそれぞれに個別にアクセスを許可します (これは、すべてにアクセスする必要がある管理者にとって重要な PITA になる可能性があります)。
ACL パターンはこのような状況にどのように対応しますか? より良い方法はありますか?
私は最終的にこれを PHP で実装し、Cake を使用します。そのため、PHP を使用した例は歓迎されますが、必須ではありません!