7
votes

Contrôle d'accès basé sur un rôle (RBAC) - composant .NET

Dans mon travail, nous essayons de consolider l'authentification de l'application agricole avec Windows Identity Fundation (WIF) ou de certains composants personnalisés en fonction du fournisseur d'adhésion.

Avec cela, nous devons fournir aux développeurs (et aux utilisateurs finaux) de certains composants qui peuvent nous aider avec la logique des vues de gestion par rôle (RBAC - Contrôle d'accès basé sur le rôle). Je ne pouvais rien trouver.

C'est l'idée: un utilisateur 'admin' peut visualiser les pages 'Home' et 'Administration'. Eh bien, comme un développeur, je ne veux pas écrire de code pour faire ce profilage. Pour ce faire, je m'attends à travailler avec un composant qui encapsule cette complexité. La même idée de gérer des événements ou des actions dans l'application

Savez-vous quelque chose comme ça? Quelque chose comme un fournisseur de rôle, mais comme une composante générique, cela peut m'aider (comme le profilage de Moodle ou Joomla).

Juste pour l'enregistrement, l'anglais n'est pas ma langue de navigation, et je l'apprends toujours.


1 commentaires

Essayez casbin.net: github.com/casbin/casbin.net


3 Réponses :


1
votes

J'ai écrit mon propre composant pour exactement ce problème. Vous pouvez vous interfacer avec des annuaires Windows et tels que, mais dans le passé, je ne voulais pas gérer les utilisateurs d'une application via Windows Ad, alors j'écris mon propre sous-système et un sous-système basé sur les privilèges pour mes applications.

Ce n'est pas beaucoup de travail à faire, et pour moi, c'était vraiment la peine parce que je l'ai mis exactement ce dont j'avais besoin et plus.


0 commentaires

1
votes

J'ai écrit le mien en utilisant PostSharp, juste en ajoutant des attributs au Methos dont vous avez besoin de contrôle d'accès.


1 commentaires

Pouvez-vous me montrer un exemple s'il vous plaît? Merci du conseil



2
votes

Pour répondre à votre question, il existe peu de composants .NET disponibles qui permet à toutes les applications .NET d'appliquer RBAC.

rbac - Le système de contrôle d'accès basé sur le rôle est une méthode de limitation de l'accès à «certaines sources ou applications ou certaines fonctionnalités d'applications» sur la base des rôles des utilisateurs d'organisation. Ici, les restrictions peuvent être au moyen de multiples autorisations, celles créées par l'administrateur pour restreindre l'accès, et ces autorisations représentent collectivement un rôle qui sera attribué à l'utilisateur.

Et si nous allons légèrement plus profondément dans RBAC, il contient essentiellement 3 caractéristiques. 1) Authentification - Cela confirme l'identité de l'utilisateur. Habituellement, cela se fait via des comptes d'utilisateur et des mots de passe ou des informations d'identification. 2) Autorisation - Il définit ce que l'utilisateur peut faire et ne peut pas faire dans une application. Ex. «L'ordre de modification» est autorisé mais «créer une nouvelle commande» n'est pas autorisé. 3) Audit des actions des utilisateurs sur les applications. - Il tient une trace des actions de l'utilisateur sur les applications, ainsi que qui a accordé quel accès aux utilisateurs?

C'était une image de vue de dessus très basique du système RBAC.

Composant d'adhésion ASP.NET est l'un des moyens de mettre en œuvre RBAC, vous pouvez également écrire votre propre système avec des fonctionnalités de base.

Il existe des articles intéressants et utiles qui affichent de brèves informations et une mise en œuvre de RBAC.

http://www.visual-guard.com/fr/net-powerBuilder-application-security-Authentication-Permission-Crappess-Control-rbac-articles/Articles DotNet-Security-Security-Article-Ressources / Role-Basé-Access-Control.html

http: // www.codeproject.com/articles/875547/custom-roles-based-access-control-rbac-in-astrol-rbac-in-asp-net

Je recommande également peu de composants prêts à utiliser VisualGuard (@Quchich i travail) et également membreProtect.


0 commentaires