Geode身份验证生成服务器拒绝的握手

时间:2017-10-04 16:24:15

标签: gemfire geode

我有一个Geode系统,包括定位器,服务器,2个本地本地客户端,远程客户端和HTTPS REST客户端。

我们现在需要进一步验证REST客户端,以包括对REST操作的用户名和密码检查,这意味着设置身份验证herehere。我们设置security.jsonExampleSecurityManager处理经过身份验证的REST HTTPS请求。

设置身份验证意味着使用TCP的本地和远程本机客户端也需要身份验证。所以我在本地实现了AuthInitialize example并让这些客户端连接到服务器,它们运行良好。

但是,有一个问题是几分钟后客户端(本地和远程)失去与Geode服务器的连接,并出现(客户端)错误:

Handshake rejected by server[#.#.#.#:40404]: A previous connection attempt from this client is still being processed: identity(0.0.0.0(MyGeodeClient:3116:loner)

我将服务器日志设置为最佳并获得以下警告:

[finest BST GeodeServer <ServerConnection on port 40404 Thread 24> tid=0xa4] Server connection from [identity(0.0.0.0(MyGeodeClient:3116:loner):2:GFNative_k350A9imTd3116:MyGeodeClient,connection=1; port=57098] received USER_CREDENTIAL_MESSAGE with txid -1

ClientHealthMonitor: Received ping from client with member id identity(0.0.0.0(MyGeodeClient:3116:loner):2:GFNative_k350A9imTd3116:MyGeodeClient,connection=1

然后是很多attempting to get session; create = false; session is null = true; session has id = false

然后This org.apache.shiro.mgt.DefaultSecurityManager instance does not have a [org.apache.shiro.mgt.RememberMeManager] instance configured. RememberMe services will not be performed for account [test].

最后

A previous connection attempt from this client is still being processed: identity(0.0.0.0(MyGeodeClient:3116:loner):2:GFNative_k350A9imTd3116:MyGeodeClient,connection=1

[warning BST GeodeServer <Handshaker /#.#.#.#:40404 Thread 0> tid=0x53] CacheClientNotifier: Unsuccessfully registered client with identifier identity(0.0.0.0(MyGeodeClient:3116:loner):2:GFNative_k350A9imTd3116:MyGeodeClient,connection=1

基本上这种情况正在重演,然后订阅事件处理程序失败,因为它们没有得到事件通知。

如果我将Geode Server日志缩减为info,则警告

Unsuccessfully registered client with identifier identity(0.0.0.0(MyGeodeClient:3116:loner):2:GFNative_k350A9imTd3116:MyGeodeClient,connection=1

重复多次......

请指点什么?有没有办法在不启用本机客户端TCP身份验证的情况下启用REST身份验证?致谢

1 个答案:

答案 0 :(得分:1)

对于您的上一个问题:&#34;有没有办法启用REST身份验证而不启用本机客户端身份验证&#34;,答案是否定的。在群集中设置安全性后,它应该保护您的数据不受所有通信通道的影响。如果我们允许您禁用一个,那么您的群集将容易受到攻击。

就您看到的错误消息而言,看起来shiro会话已超时。您使用的是哪个版本的Geode?我们已经修复了会话超时问题。