たくさん掘り下げた後、私はエラーの原因を見つけました。「デフォルト:個人の値のみを変更する」というレコードルールがあります。これはリビジョン3560.1.7で追加され、リビジョン3713にマージされました。コミットコメントは言う:
[IMP] ir.values:セキュリティの向上:ユーザーは個人のデフォルトにのみ書き込むことができます
すべてのユーザーのデフォルトを設定したり、アクションバインディングを変更したりするには、管理者アクセスが必要です。
マジック管理者アカウントを使用してのみアクションバインディングを変更できるようにすることを意図しているようです。メニュー項目を変更するには、アクションバインディングを変更する必要があります。
これをどのように回避できますか?さて、あなたは記録規則をより洗練させることができます。ほとんどのユーザーを自分のデフォルトの編集に制限し、管理ユーザーがir_values
テーブル内のすべてのレコードを編集できるようにする必要があります。すべてのユーザーはHumanResources/ Employeeグループに属しているため、そのグループを「デフォルト:個人の値のみを変更する」ルールに追加して、グローバルルールにならないようにしました。ir_values
次に、 「デフォルトとアクション:任意の値を変更する」という新しいルールを追加しました。ダミーのドメインフィルターを使用しました。[(1,'=',1)]
それを管理/構成グループに割り当てました。これで、ほとんどのユーザーは最初のルールにのみ一致し、自分のデフォルトを編集することしかできなくなります。構成グループ内の誰もが両方のルールに一致するため、ルールはORと組み合わされ、テーブル内のすべてのレコードを編集できるようになります。これを機能させるために重要なことは、すべてのユーザーがメンバーであるグループまたはグループのセットが必要なことです。