Sto facendo un progetto in WPF. Ho avuto l'obbligo di autenticare un utente e fornire accessibilità per i moduli in base al ruolo. Ho un modo migliore per ottenere questo in WPF.Autenticazione e ruoli in WPF
risposta
Dipenderà in parte da quanto è sicuro che il codice sia necessario.
Per tutti i casi di utilizzo, tuttavia, utilizzare un modello Model-View-ViewModel. In ogni ViewModel, forse nella migliore posizione in una classe base per tutte le classi ViewModel, include una variabile di stato che restituisce una stringa e solleva l'evento PropertyChanged ogni volta che cambia lo stato della sicurezza.
Base la presentazione per ciascuna classe View sul valore della stringa, seguendo uno schema simile a quello risposta accettata a questa domanda SO:
https://stackoverflow.com/questions/3868164/
La risposta descrive come fare questo con i valori booleani , ma puoi usare qualsiasi valore di stringa diverso da "True" o "False" se la tua variabile di stato ViewModel ha bisogno di più di due stati.
Tutti i codici .NET, incluso WPF, possono essere facilmente decodificati. Se il tuo codice deve essere più sicuro di quello, cioè se il tuo caso d'uso presuppone che i tuoi utenti modifichino il tuo programma WPF, allora vorrai offuscare e/o crittografare gran parte del codice ViewModel, usando prodotti disponibili in commercio come InishTech SLPS o Dotfuscator o qualsiasi altra cosa.
In alternativa, è possibile utilizzare lo stesso pattern MVVM e scrivere un'applicazione Silverlight, ma non sono sicuro che un utente Silverlight abbia accesso ai file binari come farebbe un utente WPF desktop.
- 1. Verifica dei ruoli e autenticazione con Passport.js
- 2. Autenticazione moduli per diversi ruoli?
- 3. Ruoli disponibili con autenticazione di Windows
- 4. Autenticazione modulo: ruoli (MVC 4) C#
- 5. Autenticazione, autorizzazione, gestione utenti e ruoli e sicurezza generale in .NET
- 6. Azure, ruoli e istanze
- 7. Autorizzazione e ruoli utente in Oracle Apex?
- 8. ruoli utente e autorizzazione in mvc
- 9. Ruoli e autorizzazioni di autorizzazione
- 10. Magento: ottieni ruoli e utenti
- 11. Autenticazione moduli personalizzati in MVC
- 12. Modelli e ruoli in Qt5 e Qt 4.8
- 13. MVC 5 - Ruoli - IsUserInRole e aggiunta di utenti al ruolo
- 14. Java EE 6 gruppi, utenti e ruoli -confrontarli- di Shiro ruoli, utenti e permessi
- 15. Miscelazione autenticazione di base e autenticazione moduli in ASP.NET MVC3
- 16. Express.js/Mongoose ruoli utente e permessi
- 17. Relayjs Graphql autenticazione utente
- 18. Membership ASP.NET e protezione basata sui ruoli
- 19. Entity Framework utente e Gestione ruoli
- 20. Entità e utenti di semi, ruoli?
- 21. Rimuovi appartenenza e provider di ruoli asp.net
- 22. Autenticazione NTLM e smartcard
- 23. CouchApps e autenticazione utente
- 24. Database e autenticazione Jenkins
- 25. WebServiceHostFactory e autenticazione IIS
- 26. Drupal: assegnare ruoli in USER_SAVE
- 27. Autenticazione mono e ASP.NET
- 28. Autenticazione Siteminder e Android
- 29. PowerShell, svn e autenticazione
- 30. WCF e autenticazione
Voglio solo attivare la visibilità di determinate opzioni nell'interfaccia utente. – Novice
Quindi si dovrebbe andare bene con un approccio quasi identico a quello nella domanda collegata: definirai uno stile per ogni stato di visualizzazione e applicherai lo stile con un DataTrigger associato al booleano ViewModel, forse chiamato "Autenticato". È possibile inserire il codice di verifica effettivo nel getter ViewModel per quella proprietà "Autenticata". –