2017-03-23 4 views
0

J'ai utilisé WSO2 IS 5.3.0. J'utilise le service SOAP de RemoteUserStoreManagerService. L'opération est setUserClaimValues. Ceci est utilisé pour mettre à jour la valeur des tentatives de connexion échouées par l'utilisateur. Cependant, ce service n'appelle le travail que pour la première fois et ensuite il ne fonctionne pas jusqu'à ce que wso2 soit redémarré. Le service SOAP ne renvoie aucune erreur à tout moment.WSO2 Identity Server: les services SOAP ne parviennent pas à mettre à jour les valeurs de revendication des utilisateurs après la première fois

Lorsque je le touche via SOAP-UI, j'obtiens une réponse suivante avec un corps vide.

HTTP/1.1 202 Accepted 
X-Content-Type-Options: nosniff 
X-XSS-Protection: 1; mode=block 
X-Frame-Options: DENY 
Content-Type: text/xml;charset=UTF-8 
Transfer-Encoding: chunked 
Date: Wed, 22 Mar 2017 21:03:16 GMT 
Server: WSO2 Carbon Server 

requête SOAP pour la valeur de réglage

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ser="http://service.ws.um.carbon.wso2.org" xmlns:xsd="http://common.mgt.user.carbon.wso2.org/xsd"> 
    <soap:Header/> 
    <soap:Body> 
     <ser:setUserClaimValues> 
     <!--Optional:--> 
     <ser:userName>superadmin03</ser:userName> 

      <ser:claims> 
      <!--Optional:--> 
      <xsd:claimURI>http://wso2.org/claims/identity/failedLoginAttempts</xsd:claimURI> 
      <!--Optional:--> 
      <xsd:value>2</xsd:value> 
     </ser:claims> 

     </ser:setUserClaimValues> 
    </soap:Body> 
</soap:Envelope> 

réponse SOAP pour obtenir la valeur

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ser="http://service.ws.um.carbon.wso2.org"> 
    <soap:Header/> 
    <soap:Body> 
     <ser:getUserClaimValues> 
     <!--Optional:--> 
     <ser:userName>superadmin03</ser:userName> 

     </ser:getUserClaimValues> 
    </soap:Body> 
</soap:Envelope> 

Quand j'appelle getUserClaimValues ​​pour un même attribut, il ne me montre pas nouvelle valeur mais la même vieille valeur.

Je suis en train de mettre à jour la valeur pour http://wso2.org/claims/identity/failedLoginAttempts

Voici ce que je trouve dans les journaux dans WSO2 si le service SOAP ne retourne pas de défauts.

[2017-03-22 16:03:20,012] WARN {org.wso2.carbon.server.admin.module.handler.AuthenticationHandler} - Illegal access attempt at [2017-03-22 16:03:20,0012] from IP address 127.0.0.1 while trying to authenticate access to service RemoteUserStoreManagerService 

Toute aide est très appréciée!

Cordialement,

Sagar Shah

Répondre

1

Il semble que vous avez activé les deux identityMgtEventListeners dans un fichier identity.xml.

Soit

org.wso2.carbon.identity.mgt.IdentityMgtEventListener

ou
org.wso2.carbon.identity.governance.listener.IdentityMgtEventListener

Doit être activé à la fois.

Merci
Isura.

+0

C'était une bonne prise. Par défaut, "org.wso2.carbon.identity.governance.listener.IdentityMgtEventListener" est activé. Selon l'article sur "https://docs.wso2.com/display/IS510/User+Account+Locking" j'ai activé "org.wso2.carbon.identity.mgt.IdentityMgtEventListener" et j'ai eu le problème ci-dessus. J'ai inversé ce dossier et l'ai gardé par défaut (juste activé "org.wso2.carbon.identity.governance.listener.IdentityMgtEventListener") et cela a fonctionné très bien. Mais si j'active l'autre et que je désactive "org.wso2.carbon.identity.governance.listener.IdentityMgtEventListener", alors cela ne semble pas fonctionner – sagarshah1983

+0

Quand je garde "org.wso2.carbon.identity.governance.listener.IdentityMgtEventListener "activé et désactivé, WSO2 ne verrouille pas le compte d'utilisateur sur des tentatives d'authentification non valides. N'y a-t-il pas un moyen d'y remédier? – sagarshah1983

+0

Ensuite, vous devez configurer le verrouillage du compte dans l'interface utilisateur IDP résidente. Pas de l'identité-mgt.fichier de propriétés –