1
許可のスタックを拒否する
役割のためにdb_denycustomer、私がしたいだけで、顧客テーブルの列コードを選択し、他の人のどれもします。だから私はこれをしました: DENY SELECT ON dbo.customer TO db_denycustomer GRANT SELECT ON dbo.customer (code) TO db_denycustomer ...そしてそれはうまくいきます。涼しい!しかし、なぜですか? 私が関連記事で読んだのは、その許可スタックですが、DENY優先されます。対照的に、私の場合、最後の権限「クエリ」が優先されたようです。案の定、逆の順序で実行すると、後者DENYもコード列を非表示にします。 これについて詳しく説明してもらえますか? テストしたユーザーのデフォルトdb_datawriterとdb_datareaderロールも含めました。