使用Jetty Websocket客户端进行摘要式身份验证

时间:2016-09-21 08:15:09

标签: java authentication jetty client

我想编写一个Java Websocket客户端,它需要摘要式身份验证才能在服务器上进行身份验证。

我玩Jetty Websocket client example,但我不知道如何轻松添加摘要身份验证。此外,我发现没有在线资源可以提示如何完成。

我也发现很难在网上找到信息,因为大多数人都使用Jetty作为服务器(显然)。例如,这不是重复:How to authenticate websocket client in jetty?

因此我想知道是否可以在Jetty Websocket客户端上使用摘要认证?

1 个答案:

答案 0 :(得分:0)

你可以试试这两种方法:

  1. 将您的用户名和密码放在websocket网址中 例如。 WS://用户名:password@www.example.com/resturl

  2. 生成授权并将其放入请求标头。

    String userpass = accessKey + ":" + secretKey;
    
    String authorization = "Basic " + new String(new Base64().encode(userpass.getBytes())).trim();
    
    ClientUpgradeRequest request = new ClientUpgradeRequest();
    
    request.setHeader("Authorization", authorization);