Я хотел бы использовать .Net SqlMembershipProvider и SqlRoleProvider для управления пользователями в моем приложении. Моя проблема в том, что когда приложение запускается, оно не знает никакой информации о подключении к БД. В целях безопасности необходимо получить эту информацию от службы WCF, работающей на сервере базы данных. Поэтому мне нужно постоять своих провайдеров членства / роли.
Я думаю, что мне удалось создать и добавить поставщика членства:
// register membership provider
var membership = new SqlMembershipProvider();
var providerValues = new NameValueCollection();
providerValues.Add("name", "sqlMembershipProvider");
providerValues.Add("applicationName", "/");
providerValues.Add("connectionStringName", "connectionStrDynamAddedToConfig");
providerValues.Add("maxInvalidPasswordAttempts", "10");
membership.Initialize("sqlMembershipProvider", providerValues);
До сих пор я не смог разработать нечто подобное для создания RoleProvider. Я могу создать провайдера, но не могу добавить его в диспетчер ролей. Нужно ли создавать собственного провайдера, который может принимать connectionString после того, как он уже инициализирован?