public String login()

in dubbo-admin-server/src/main/java/org/apache/dubbo/admin/controller/UserController.java [51:76]


    public String login(HttpServletRequest httpServletRequest, HttpServletResponse response, @RequestParam String userName, @RequestParam String password) {
        ExtensionLoader<LoginAuthentication> extensionLoader = ExtensionLoader.getExtensionLoader(LoginAuthentication.class);
        Set<LoginAuthentication> supportedExtensionInstances = extensionLoader.getSupportedExtensionInstances();
        Iterator<LoginAuthentication> iterator = supportedExtensionInstances.iterator();
        boolean flag = true;
        if (iterator != null && !iterator.hasNext()) {
            if (StringUtils.isBlank(rootUserName) || (rootUserName.equals(userName) && rootUserPassword.equals(password))) {
                return jwtTokenUtil.generateToken(userName);
            } else {
                flag = false;
            }
        }
        while (iterator.hasNext()) {
            LoginAuthentication loginAuthentication = iterator.next();
            boolean b = loginAuthentication.authentication(httpServletRequest, userName, password);
            flag = b & flag;
            if (!flag) {
                break;
            }
        }
        if (flag) {
            return jwtTokenUtil.generateToken(userName);
        }
        AuthInterceptor.loginFailResponse(response);
        return null;
    }