特定のユーザーのUNCパスに対してNTFSアクセス許可を付与しようとしましたが、UNCパスによって異なる動作が発生します。以下は、私は各シナリオにおける権限と、結果を出すために使用しています(MSDNから)コード、継承されたアクセス許可がNTFSアクセス許可を与えている間に失われました
static void GiveNTFSPermissions(string folderPath,
string ntAccountName,
FileSystemRights accessRights)
{
DirectorySecurity dirSecurity = Directory.GetAccessControl(folderPath);
FileSystemAccessRule newAccessRule =
new FileSystemAccessRule(
ntAccountName,
accessRights,
AccessControlType.Allow);
dirSecurity.AddAccessRule(newAccessRule);
Directory.SetAccessControl(folderPath, dirSecurity);
}
が」私は私のローカルマシン上の「RootShare」という名前の共有、および別のフォルダを持っていると仮定ですInsideRootShare "と入力します。
Scenario1: 私が呼ぶ、
GiveNTFSPermissions(@"\\sri-devpc\RootShare\InsideRootShare",
@"domain\username",
FileSystemRights.Write);
: 私が呼ぶ、
GiveNTFSPermissions(@"\\sri-devpc\RootShare",
@"domain\username",
FileSystemRights.Write);
継承権限は、共有パスに
Scenario2を失いました
継承されたアクセス許可はそのままでした。
FileSystemAccessRule
の異なるコンストラクタで試しましたが、運はありません。
この現象の背景には、どのような回避策がありますか?
引数として 'InheritanceFlags'をとる[constructor](http://msdn.microsoft.com/en-us/library/system.security.accesscontrol.filesystemaccessrule.aspx)を試しましたか?また、 'AddNTFSPermission'は' GiveNTFSPermissions'よりも妥当な名前です。既存のアクセスルールに新しいアクセスルールを追加しようとするためです。 – Nawaz
このトピックを参照してください:http://stackoverflow.com/questions/243995/setting-folder-permissions-on-vista – Nawaz
@Nawaz:私はすべてのコンストラクタを試しましたが、私は同じ結果を持っています。提案ありがとう:) – sri