7
votes

Comment vérifier la sécurité du printemps pour l'authentification de l'utilisateur et obtenir des rôles de Flex?

J'utilise le printemps, la sécurité de printemps, les flambons, le flex et le printemps-flex.

Je sais que je peux appeler canalelset.login () et canalelset.logout () pour accrocher à la sécurité du ressort pour l'authentification. canalelelset.Authentifié apparemment connaît uniquement la session FLEX actuelle, car elle démarre toujours comme false , jusqu'à ce que vous appeliez canalelset.login () .

Ce que je veux faire:

  1. Vérifiez de flex pour savoir si un utilisateur est déjà en session.
  2. Si oui, je veux leur nom d'utilisateur et leurs rôles.

    update
    Je pensais juste que j'ajouterais des détails de la solution que j'ai utilisée à partir de BRD6644 de la réponse de BRD6644 ci-dessous, afin que cela puisse être plus facile Pour quelqu'un d'autre qui regarde ça. J'ai utilisé Ceci < / a> Stackoverflow Répondre pour faire le SecurityContext injectable. Je ne réécrireai pas le code de cette réponse dans celui-ci, alors allez-y en consulter pour le SecurityContextFaCade .

    SecurityServiceImpl.java xxx


    sécuritéContext.xml xxx



    flexcontext.xml xxx



    flexsecuritytest.mxml xxx


0 commentaires

3 Réponses :


2
votes

J'écrirais une méthode de service à ressort sécurisé qui renvoie les informations de rôles de l'utilisateur actuelles. Laissez l'application Flex d'invoquer que lorsque l'application démarre. Si vous recevez une expérience défavorable en raison d'une erreur de sécurité, demandez à l'utilisateur d'authentifier et d'utiliser des canaux.


1 commentaires

Bonne idée, va essayer cela.



0
votes

Voir ce blog, je l'ai suivi avant que le printemps n'avait un module Flex, qui résout ce problème bien. J'espère que cela vous fournira quelques gemmes qui pourraient aider.

Blog de gridshore


1 commentaires

Les gens qui commencent sur ses postes de blog semblent avoir les mêmes problèmes que j'étais; Principalement que la journalisation et l'extérieur était facile de Flex, mais remarquant une session existante n'était pas. La solution de BRD6644 a parfaitement fonctionné pour cela.



3
votes

Si vous utilisez Spring Blaseds Integration , vous pouvez implémenter la méthode GetUserDetails à l'aide d'Org.SpringFramework. flex.security.AuthenticationResultitils. XXX


1 commentaires

C'était beaucoup mieux que ce que j'avais fait. Cela a très bien fonctionné et a sauvé beaucoup de code.