#c# #asp.net #dependency-injection #asp.net-core #azman
#c# #asp.net #внедрение зависимостей #asp.net-ядро #азман
Вопрос:
Я добавляю поддержку пользователей экстранета в свое корпоративное приложение, написанное на ASP.NET ядро и использует следующую библиотеку: EnterpriseLibrary.Безопасность.AzMan 5.0. Важно отметить, что это часть переноса существующего ASP.NET приложение веб-формы 2.0, в котором была реализована эта аутентификация / Авторизация.
Конфигурация xml, используемая с приложением веб-формы, выглядит следующим образом:
<membership defaultProvider="AspNetActiveDirectoryMembershipProvider">
<providers>
<add name="AspNetActiveDirectoryMembershipProvider"
type="System.Web.Security.ActiveDirectoryMembershipProvider"
connectionStringName="DirectoryConnection" connectionProtection="Secure"
enableSearchMethods="true" requiresUniqueEmail="true"
attributeMapUsername="sAMAccountName" description="Default AD connection"
clientSearchTimeout="30" serverSearchTimeout="30" />
</providers>
</membership>
С ASP.NET Ядро мне нужно добавить эту службу, используя внедрение зависимостей.
Мне нужно преобразовать приведенное выше в json, который является форматом конфигурации для ASP.NET ЯДРО.
Теперь я добавил следующее в AppSettings.json:
"AzMan": {
"defaultProvider": "AspNetActiveDirectoryMembershipProvide",
"providers": {
"name": "AspNetActiveDirectoryMembershipProvider",
"type": "System.Web.Security.ActiveDirectoryMembershipProvider",
"connectionStringName": "DirectoryConnection",
"connectionProtection": "Secure",
"enableSearchMethods": "true",
"requiresUniqueEmail": "true",
"attributeMapUsername": "sAMAccountName",
"description": "Default AD connection",
"clientSearchTimeout": "30",
"serverSearchTimeout": "30"
}
Может кто-нибудь предложить шаги для добавления этой службы через класс запуска. ?
Заранее большое спасибо Бертран
Комментарии:
1. Я почти уверен, что вы не можете использовать ничего, что использует
System.Web.*
пространство имен в ASP.NET Ядро, поскольку все, что его использовало, было тесно связано с IIS и http.sys и если вы не измените изменить конструктор (путем наследования или изменения кода исходного класса), вы не сможете ввести настройки ни через DI2. Я использую полный фреймворк с ASP.NET ЯДРО 1.0!