2016-10-04 10 views
0

WebSphere Application Server 8.0.xからLTPAキーファイルをエクスポートし、そのファイルをLiberty Profile ServerにインポートしてSSO機能を使用できますか? (16.0.0.3)WASとLiberty間のSSOのキーファイルのエクスポートとインポート

私は試してみるとうまくいかないようです。自動的にログインするのではなく、ログイン画面が表示されます。

次のような構成は、server.xmlで行われます

... 
<ltpa keysFileName="${server.output.dir}/ltpakeyexport.keys" keysPassword="ltpatest" expiration="400" /> 
<webAppSecurity ssoCookieName="ltpav2" ssoDomainNames="myintranet.net"/> 

<basicRegistry id="basic" ignoreCaseForAuthentication="true" realm="realmNameFromWAS"> 
... 

答えて

0

LTPAキーがWebSphere Application Serverコンソールからエクスポートすることができます。グローバルセキュリティ> LTPA - >クロスセルシングルサインオン

LTPAキーをエクスポートするためのパスワードとファイル名を指定します。

これらのLTPAキーは、エクスポート中に上記で指定したのと同じパスワードを使用してLiberty Profile Serverで使用できます。

WebSphere Application ServerとLibertyプロファイルの間でシングル・サインオン(SSO)を使用する場合は、両方でユーザー・レジストリー(LDAP)の「レルム名」も同じであることを確認する必要があります。レルムプロファイルには、ldapRegistry定義でrealm = "MyRealm"を指定することで、レルム名を指定できます。

+0

はい、私はセットアップするSSOをWASリバティプロファイル間でみてください。現在、私は ' 'および \t '。しかし何らかの理由でそれはうまくいかない。私は完璧に動作する2番目のWASサーバーでSSOに同じキーファイルを使用しました。 – Karsten

+0

私はクレバータント(私が避けたい)を入力してリバティwebappにログインした後、私は次のブラウザ要求で "ltpav2"という2つのクッキーを持っていると言いたい。 WASのものとLibertyのもの。 – Karsten

0

うーん、私はトレース可能にすることによって、問題をダウン追跡することができました:

<logging traceSpecification="com.ibm.ws.security.*=all:com.ibm.ws.webcontainer.security.*=all"/> 

私は、次のexeptionた:だから

com.ibm.ws.security.registry.EntryNotFoundException: uid=KARSTEN,type=Person,scope=LTPA does not exist 
at com.ibm.ws.security.registry.basic.internal.BasicRegistry.getUserSecurityName(BasicRegistry.java:506) 

を、ユーザーは自動的に「ユーザIDため、認証できませんuid = KARSTEN、type = Person、scope = LTPA "は存在しません。それは本当です、ユーザー "KARSTEN"だけが存在します。私は基本的なレジストリにこのユーザーを作成するときに使用されるパターン

java.util.regex.Matcher[pattern=([^:]+):(\QMyRealm\E)/(.*) region=0,49 lastmatch=user:MyRealm/uid=KARSTEN,type=Person,scope=LTPA] 

は、ユーザIDが、等「タイプ=人」

を含む文字列全体と一致しないためだけでなく、正規表現のマッチング問題があるように思われます:

<basicRegistry id="basic" ... > 
... 
<user name="uid=KARSTEN,type=Person,scope=LTPA" password="test" /> 
... 
</basicregistry> 

すべてが期待どおりに機能します。

WLPのバグ(または、私たちのWebSphere 8.0.x SSOインフラストラクチャはユーザーに標準ではない識別子を提供します)と思われます。

(com.ibm.ws.security.AccessIdUtil.setSecurityService()で指定された(パターン:38〜))

関連する問題