Аутентификация и роли в WPF

Я делаю проект в WPF. Я получил требование аутентифицировать пользователя и предоставить accessibilty для модулей на основе роли. У меня есть лучший способ достичь этого в WPF.

1 ответов


Это будет частично зависеть от того, насколько безопасным вам нужен код.

для всех ваших случаев использования, однако, используйте шаблон Model-View-ViewModel. В каждом ViewModel, возможно, лучше всего помещенном в базовый класс для всех ваших классов ViewModel, включите переменную состояния, которая возвращает строку и вызывает событие PropertyChanged всякий раз, когда изменяется состояние безопасности.

основывайте представление для каждого класса представления на значении этой строки, следуя шаблону, подобному принят ответ на этот вопрос так:

https://stackoverflow.com/questions/3868164/

ответ описывает, как это сделать с логическими значениями, но вы можете использовать любое строковое значение, отличное от "True" или "False", если вашей переменной состояния ViewModel требуется более двух состояний.

весь код .NET, включая WPF, можно легко реверсировать. Если ваш код должен быть более безопасным, то есть если ваш вариант использования предполагает, что ваши пользователи будут взломайте свою программу WPF, тогда вы захотите запутать и/или зашифровать большую часть кода ViewModel, используя коммерчески доступные продукты, такие как SLPS InishTech или Dotfuscator или что-то еще.

кроме того, вы можете использовать тот же шаблон MVVM и написать приложение Silverlight, но я не уверен, что пользователь Silverlight имеет доступ к двоичным файлам так, как пользователь WPF на рабочем столе.