0

セキュリティ ロール エンティティを拡張して、自分のビジネスに関連するいくつかのカスタム アクセス許可を含めたいと考えています。
たとえば、「最大 X $ の注文を承認できます」や「名前が Y で始まる見込み客を更新できます」などを追加したい場合があります (もちろん、いくつかの例です)。
次に、開発するワークフロー、プラグイン、iframe でこれらのアクセス許可を使用します。

私が知る限り、security roleエンティティはカスタマイズできないため、フィールドを追加することはできません。このデータを保持し、 と 1 対 1 の関係を持つ
カスタム エンティティを作成することを考えました。ただし、エンティティとの関係を作成する方法を見つけることができませんでした。 Role exstensionsecurity rolerole

誰にも考えはありますか?

4

2 に答える 2

0

この種の機能は、プラグインを使用すると非常にうまく実装できると思います。プラグインを使用すると、ルールがパイプラインに埋め込まれ、SDK を使用している場合は確実に実装されます。

たとえば、ロール「My Custom Sales Role」を持つユーザーのみが 5 つを超える製品の注文を承認できるというルールを適用します。

  • 注文ステータスの変更時に実行されるプラグインを作成する
  • 数量が > 5 かどうかを検出する
  • そうでない場合は、持ち歩く
  • その場合、実行中のユーザー GUID を取得します
  • ユーザーの役割を取得する
  • 「私のカスタム セールス ロール」を確認します
  • 存在する場合はアクションを許可し、存在しない場合は例外をスローします 'You do not have permissions blah blah'

これにより、ルールが 1 か所に保持されます (1 つのライブラリですべてのルールをカプセル化できます)。それはあなたが持っている数に少し依存しますが、パイプラインにそれらを保持することは私にとって合理的なアプローチのように思えます.

于 2013-06-20T15:03:32.503 に答える