2017-08-15 2 views
1

Nous avons une application monopage avec AngularJS (1.6) et un serveur côté JAVA Spring MVC. Après l'authentification, le serveur fournit le fichier index.htm avec un fichier JS principal contenant TOUS les modules de l'application.Autorisation avec AngularJS

Maintenant, il est nécessaire de rendre certains modules disponibles pour certains rôles d'utilisateur. Quelle est la manière acceptée de réaliser ceci?

Je pensais à créer un filtre côté serveur pour intercepter les requêtes vers ce fichier JS et, selon le rôle de l'utilisateur, retirer du module JS les modules que l'utilisateur ne devrait pas voir.

Il semble que ce ne soit pas vraiment une solution élégante et je me demande s'il existe une meilleure façon d'y parvenir.

Merci!

Répondre

1

Vous pouvez voir l'exemple suivant Login example. Il utilise l'authentification repos http et utilise le nom d'utilisateur et le mot de passe dans les en-têtes pour générer un en-tête chiffré. Voir Rest Api pour le code de fin. Voir service d'authentification

if (LocalStorage.Get('auth') !== null) { 
    $http.defaults.headers.common.Authorization = LocalStorage.Get('auth'); 
    return true; 
    } 
    else { 
    return false; 
    } 
0

U peut utiliser une bibliothèque auth base de client comme satellizer et mettre en œuvre l'autorisation de votre routeur