简体   繁体   English

HashLoginService和Jetty9

[英]HashLoginService and Jetty9

I am trying to set a username/password combination programatically: 我试图以编程方式设置用户名/密码组合:

    HashLoginService loginService = new HashLoginService();
    loginService.setName("myrealm");

    Credential credential = new Password("password");

    AbstractLoginService.UserPrincipal principal =
            new AbstractLoginService.UserPrincipal("username",credential);

    Subject subject = new Subject();
    subject.getPrincipals().add(principal);
    subject.getPrivateCredentials().add(credential);


    loginService.getIdentityService().newUserIdentity(
            subject,
            principal,
            new String[]{"users"});

Yet I am getting 401. What do I miss here? 然而我得到401.我在这里想念什么? Used to be able to do simple 曾经能够做到简单

  loginService.putUser("username",
            new Password("password"),
            new String[]{"users"});

but not with jetty 9. 但没有码头9。

Would appreciate some guidance. 会很感激一些指导。 Thank you! 谢谢!

Use the following code to resolve the issue you have, tested against jetty version 9.4.8: 使用以下代码解决您遇到的问题,针对jetty版本9.4.8进行测试:

HashLoginService loginService = new HashLoginService("MyRealm");

UserStore userStore = new UserStore();
userStore.addUser(userName, new Password("password"), new String[] { "users"});

loginService.setUserStore(userStore);

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

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