繁体   English   中英

WSO2身份服务器-UserInformationRecoveryService在无效密码上未返回所需的错误消息

[英]WSO2 Identity Server - UserInformationRecoveryService not returning needed error message on invalid password

我正在尝试使用WSO2 Identity Server 5.0.0 UserInformationRecoveryService,但是在调用“ registerUser()”时,它似乎无法正确处理无效的密码。 我希望该服务返回一些信息,通知客户端密码无效,但是却收到500错误和以下异常:

org.wso2.carbon.identity.mgt.stub.UserInformationRecoveryServiceIdentityMgtServiceExceptionException:UserInformationRecoveryServiceIdentityMgtServiceExceptionException

该异常未提供任何有意义的消息。

wso2carbon日志清楚地记录了以下问题:

“错误-违反密码模式策略。密码应包含数字[0-9],小写字母[az],大写字母[AZ],!@#$%&*字符之一{org.wso2。 carbon.identity.mgt.IdentityMgtEventListener}”

SOAP服务是否应该返回一些有关无效密码的有用信息? 实际上,我不能认为抛出的异常是无效密码所独有的,并且不会在客户端提供有意义的消息。

这是错误吗? 有什么办法可以让我从肥皂服务获得适当的消息?

谢谢。

我知道这很旧,但是我刚刚完成了同样的设置。

完全不是错误。 只是他们选择实施。 我同意他们缺少错误信息。 在这种情况下,无需摆弄SOAP响应以获取返回错误消息的方法,只需在客户端添加一些JavaScript文本验证即可。

<script type="text/javascript">
    var re = /(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%&*])/;
    function doSubmit() {
    var pass = document.getElementById("password").value
    var confPass = document.getElementById("confirmPassword").value
    if (pass != confPass) {
        alert('Password do not match. Please correct');
    } 
    else if (!re.test(pass)){
        alert('Password must contain at least one lowercase letter, an uppercase letter, a number, and one of (!@#$%&*). Please correct');
    }
    else {
        document.getElementById("resetPasswordForm").submit();
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM