2017-09-27 9 views
0

Je suis nouveau avec des rails, je voulais faire quelque chose qui dans mon esprit devrait être facile mais je ne suis pas sûr de la façon dont c'est fait.Rails: devise_token_auth

présentant la situation

J'ai une application à l'aide de rails en mode API pour mon serveur principal, et Angular2 comme mon serveur frontal. Pour authentifier les utilisateurs, j'utilise la gemme: devise_token_auth.

Problème

Dans mon application, j'ai de nombreux types d'utilisateurs avec des autorisations différentes. Par exemple, les directeurs, les directeurs adjoints ... ma question est comment puis-je mettre en œuvre cela? J'ai ajouté un champ user_type à la table mais est-ce tout?

+1

Normalement, cela est fait en ajoutant un champ 'role' et en utilisant éventuellement [une gemme d'autorisation] (https://github.com/CanCanCommunity/cancancan) pour faire des vérifications d'autorisation. – tadman

+0

J'utilise déjà une gemme Authentification: [link] (https://github.com/lynndylanhurley/devise_token_auth). et j'ai ajouté le rôle de champ avec une migration – Fastboyz

+0

L'authentification est une étape, l'autorisation est la façon dont vous définissez des règles pour ce que ces rôles peuvent et ne peuvent pas faire. – tadman

Répondre

0

Il existe plusieurs façons d'implémenter cette fonctionnalité.

  1. Vous pouvez vérifier https://github.com/CanCanCommunity/cancancan pour une autorisation basée sur le rôle et la gestion des accès.

  2. Ajoutez une colonne role au modèle User pour garder une trace des autorisations utilisateur.

Et vous pouvez toujours associer différentes autorisations aux différents rôles que vous définissez.