У меня есть приложение веб-форм ASP.NET, которое использует роли и группы пользователей для управления доступом.Я создал структуру каталогов, в которой есть папка для каждой добавляемой группы.Например, у меня есть группы пользователей «Google», «Yahoo», «Altavista», и у них есть соответствующие папки с одинаковыми именами.Другие пользователи не могут иметь доступ к этим папкам, если они не находятся в группе пользователей.Прямо сейчас, если мне нужно создать больше групп, я должен пойти и написать жесткий код, а также скопировать и создать файлы для новой группы.Это относительно просто, поскольку я использую пользовательские элементы управления и просто добавляю новые файлы, но я хочу создавать новые группы и папки на лету.Я создал код, который работает хорошо, но я должен подходить к этому по-другому?Вот код для создания каталога на лету (который почти работает, просто нужно исправить некоторые нюансы каталога, но не в этом вопрос), но я вижу проблему, если использую это в работе и обновляю структуру файла,но не копируйте файловую структуру в разработку.
Dim path As String = txt1.Text
Dim Ds As String = Server.MapPath("~")
If Directory.Exists(Ds & "\" & path) Then
Else
Try
Directory.CreateDirectory(Ds & "\" & path)
Dim files As String() = Directory.GetFiles(Ds & "masterCopy\", "*.*", SearchOption.AllDirectories)
For Each file1 In files
Dim Text As String = File.ReadAllText(file1)
Text = Text.Replace("XXXX", txt1.Text)
Dim fullpath As String = "~/" & path & "/" & file1
File.WriteAllText(Server.MapPath(fullpath), Text)
Next
Catch ex As Exception
Dim str As String = ex.Message
End Try
End If
Так должен ли я контролировать доступ пользователей к одному каталогу?И сделать его похожим на «Google» или «Yahoo»?Что если пользователь входит в несколько групп?