调用WSO2 Identity Server上的用户管理服务



我正在查看两个调用用户管理web服务的WSO2客户端示例。第一个是简单的客户端,第二个是网络应用程序。

第一个客户端设置系统SSL属性,然后实例化WSUserStoreManager对象。

第二个是web应用程序,它根本不设置SSL属性,而是实例化RemoteUserStoreManagerServiceStub。

有人能解释一下为什么会有这些差异吗?当有两个类似的服务可用时(常规服务和"远程"服务),该调用什么服务?调用https端点时,是否总是需要设置SSL属性?谢谢

如果要调用HTTPS端点,则需要设置SSL信任存储属性以信任服务器。但它是在客户的控制之下,如果客户愿意,它可以信任它,如果不信任,它可以忽略它。如果要忽略,则需要覆盖java的默认TrustManager。然而,通常java有一个名为"cacerts"的信任存储文件,其中包含所有受信任的CA证书。但是WSO2IS服务器的证书是自签名的,java不能信任它,您可以将证书导入到"cacerts文件"中。我不确定为什么客户端和web应用程序中有两种不同的证书。但是,如果您调用HTTPS,则必须创建信任。请进一步检查web应用程序源。有时,它可能忽略了信任。由于web应用程序在应用程序服务器中运行,有时java SSL信任属性可能已设置为正确的文件。

最新更新