Вы не говорите, какой FTP-сервер вы используете или каким образом вы хотите, чтобы пользователь AD взаимодействовал с новой папкой. Я предполагаю, что вы используете службу IIS FTP и что вам необходимо, чтобы пользователи AD могли использовать FTP для доступа к новой папке.
IIS использует те же права доступа, что и другие методы доступа к файлам в Windows (доступ осуществляется на вкладке «Безопасность» в представлении «Свойства» папки).
Я создал WinForm, которая будет выполнять следующие действия: создавать новую учетную запись локального пользователя (и добавлять их в группу), создавать новый каталог в базовом каталоге нашего сервера FTP, создавать новую виртуальную папку FTP (чтобы пользователь мог может сопоставить соединение с этой папкой) и, наконец, дать новому пользователю полный контроль над новым каталогом (и поскольку каталог был виртуальной папкой, новый пользователь имеет полный контроль через FTP).
Похоже, вам не нужно создавать нового пользователя, вам просто нужно дать ему разрешение вносить изменения в новый каталог. В моем приложении я запускаю командный файл и передаю ему несколько параметров.
Команда для изменения прав доступа к каталогу (или файлу):
cacls [The path to your new directory] /E /P [The AD user name]:C
Я не помню, что значат эти параметры; Я предлагаю вам изучить команду, чтобы убедиться, что она делает именно то, что вы хотите.
Чтобы выполнить это из VB.Net:
Shell(System.Configuration.ConfigurationSettings.AppSettings.Item("CACLS_batPath") & " " & strFolderPath & " " & _strUserName, AppWinStyle.NormalFocus, True, -1)
Это откроет видимое командное окно и выполнит командный файл, передав ему параметры. (Мне просто пришло в голову, что я делаю это в WinForms и, возможно, не так просто позвонить из ASP.Net, проверьте здесь информацию о выполнении командного файла из ASP.Net: http://codebetter.com/blogs/brendan.tompkins/archive/2004/05/13/13484.aspx)
Содержимое файла BAT:
echo "update file permissions"
cacls %1 /E /P %2:C
REM PAUSE
Удачи!