こんにちは、現在、「ASP.NET(VB)から共有フォルダのアクセス権を設定する」という機能の実装で困っています。
1)特定のサーバにフォルダを作成
2)作成されたフォルダのセキュリティ(NTFSアクセス権)を設定
3)作成されたフォルダを共有にする
4)フォルダ共有のアクセス権を設定する
という流れなのですが、1はいいとして、2〜3はWin32APIを使用することにより実装できました。
ところが、4がわからずに頓挫しています。
流れとしては
4−1)共有フォルダのACLを取得
4−2)新規ACE(アクセスさせたいユーザーやグループ)を作成
4−3)ACLにACEを追加
でいいのかと思ったんですが、Win32APIで「共有フォルダのACL」をどうやって取得していいのかがいまひとつ想像がつきません。
APIリファレンスを見てもズバリそれらしいものが見当たらず・・・
もしかしたら「GetSecurityDescriptorDacl」「GetSecurityDescriptorSacl」あたりで取得できるのかと思いきや、引数が「PSECURITY_DESCRIPTOR=セキュリティ記述子」という抽象化?されたものになっていて、ここで手詰まりをしています。
ACEの追加は「AddAccessAllowedAce」でいいかと考えています。
特にWin32APIにこだわっているわけではないので手段はなんでもいいのですが、フロント(呼び出し側)がASP.NETで動いているので、WSHなどではなくAPIで実装を試みています。
手法にヒントなど思い当たる方はいらっしゃいますでしょうか?
Win32だとNetShare系APIでできそうな感じがします。
# やったことないので,できなかったらごめんなさい。
レスありがとうございます。
了解です、調べてみます。
もし、他にも情報などありましたらぜひお願いします。
ツイート | ![]() |