Дело 1:
если веб-сервер и файловый сервер находятся в одном домене, можно использовать пользователя домена и создать общую папку на сервере NTFS и предоставить полный доступ для пользователя домена, который обращается к нему. (зависит от ваших требований).
На веб-сервере для пула веб-приложений установите пользователя домена в качестве удостоверения / учетных данных для запуска пула. так что вы можете легко использовать инструмент управления IIS для его обновления в случае изменения пароля. для аутентификации вы можете использовать все, что захотите, исходя из требований, но помните, что при вызове кода для создания папок на NTFS-сервере вам нужно использовать пользователя пула приложений. (например, если вы включаете олицетворение для другого пользователя в процессе проверки подлинности, в вашем коде необходимо выполнить олицетворение с помощью пользователя пула.)
Случай 2,
Веб-сервер и файловый сервер не находятся в одном домене, обычно я устанавливаю на файловом сервере ftp-сервер, чтобы разрешить доступ к нему конкретным пользователям (создание папок и загрузка файлов ....). В противном случае, когда вам может понадобиться, чтобы ваш ИТ-администратор сделал домен файлового сервера доверенным домену веб-сервера, вы можете сделать то же самое, что и в случае 1.
О коде олицетворения это может быть что-то вроде:
//get the identity of an appPool
using(System.Security.Principal.WindowsIdentity wid = System.Security.Principal.WindowsIdentity.GetCurrent())
{
using (System.Security.Principal.WindowsImpersonationContext ImpersonationCtx = wid.Impersonate())
{
//creating folders, uploading files to UNC path...
ImpersonationCtx.Undo();
}
}
Если ваше дело относится к этому, надеюсь, это поможет.