我想知道使用基本身份验证的HTTP请求的用户名和密码。
我正在使用WebServiceContext。
@Resource
private WebServiceContext context;
我可以通过使用context.getUserPrincipal()知道用户名.toString()
但我仍然想知道密码。通过调试我可以看到我的密码,这是密码。
如何检索仅访问WebServiceContext
?
我可以在调试时看到它,我不能直接从代码中访问它吗?
答案 0 :(得分:1)
密码是char array
,如果使用toString()
,则会返回数组的内存地址。
而是使用String.valueOf(passwordAsCharArray);
假设你有正确的吸气剂,
String.valueOf(( new ArrayList<PasswordCredential>((((Subject)context.getMessageContext().get("CLIENT_SUBJECT")).getPrivCredentials())).get(0)).getPassword());