1

Я знаю, что эту информацию можно использовать в winform, wpf или консольном приложении. Но я предпочитаю определить, какой пользователь использует то, какие роли работают по определенному методу, поэтому я мог бы решить их и запустить разные коды.Является ли членство в ASP.NET, управление ролью и профилем пригодным для использования в библиотеке классов C#?

Кроме того, в настольном приложении. как пользователь может войти? Есть ли специальный элемент управления winform или wpf?

ответ

1

Вы должны иметь возможность использовать «принципал»; Войти ASP.NET устанавливает это до IIRC, и вы можете сделать это самостоятельно для WinForms, WCF, WPF и т.д. Вы можете использовать, например:

public static bool IsInRole(string role) 
{ 
    var principal = Thread.CurrentPrincipal; 
    return principal == null ? false : principal.IsInRole(role); 
} 

Вы также можете получить систему, чтобы выполнить проверку для вас:

[PrincipalPermission(SecurityAction.Demand, Role="SuperAdmin")] 
public void DropDatabase() {/* ... */} 

От 3,5 (? SP1) и далее, вы можете использовать механизм ASP.NET для входа, чтобы выполнить свои Winform/МОФ логины, включая создание принципала; в свойствах проекта включите «Включить службы клиентских приложений» (или см. ссылку «Узнать больше» на этой вкладке).

В качестве альтернативы, написание вашей собственной личности/принципала довольно просто - посмотрите на IIdentity и IPrincipal; вам не нужно много делать.

 Смежные вопросы

  • Нет связанных вопросов^_^