我正在嘗試開發一個使用Websphere 7和JAX-WS的WS-Security的Web服務。通過一些指南,看起來我必須創建一個應用程序服務器用戶註冊表並維護該服務器內的用戶名/密碼。有沒有辦法避免必須在服務器本身創建用戶名,並以某種方式捕獲頭部並根據另一個自定義安全配置(如單點登錄)進行驗證?WS-Security Websphere配置
我能夠創建一個處理程序來獲取標題,但是當請求中的mustUnderstands設置爲1(這是強制性的)時,它會在我的處理程序看到消息之前被拒絕。
我只想使用WS-Security的UsernameToken部分。
任何幫助表示讚賞。
我的要求
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" soapenv:mustUnderstand="1">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" Id="unt_20">
<wsse:Username>some_username</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">some_password</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
...body...
</soapenv:Body>
</soapenv:Envelope>
的一個例子是有可能創建一個自定義的安全實現,所以我可以用我現有的用戶驗證方案?
的主要問題是,我不希望有另一個地方來存儲用戶名和密碼。有一個現有的服務,允許我們發送用戶名和密碼,以獲得角色並進行驗證。這是中央存儲庫,我想用它來代替將它們放入WAS中。 – Nick