2017-10-04 8 views
0

로케이터, 서버, 로컬 로컬 클라이언트 2 개, 원격 클라이언트 및 HTTPS REST 클라이언트로 진행되는 Geode 시스템이 있습니다.Geode 인증은 서버에 의해 거부 된 핸드 셰이크를 생성합니다.

이제 REST 작업에 사용자 이름과 암호 확인을 포함하도록 REST 클라이언트를 추가로 인증해야합니다. 즉, 인증 herehere을 설정해야합니다. 우리는 security.json을 설정하고 ExampleSecurityManager은 인증 된 REST HTTPS 요청을 잘 처리합니다.

인증 설정은 TCP를 사용하는 로컬 및 원격 네이티브 클라이언트가 인증을 필요로 함을 의미합니다. 그래서 AuthInitialize example을 로컬로 구현하고이 클라이언트를 서버에 연결할 수있게했으며 잘 실행됩니다.

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].

[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

마지막

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의 많은 기본적으로이 상황 자체를 반복하고, 다음 등록 이벤트 핸들러가 실패 그들은 때문에 이벤트 알림을받지 않습니다. 나는 정보에 오드 서버 로그를 줄이면

후 경고

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

모든 포인터를 ... 여러 번 제발 반복? 네이티브 클라이언트 TCP 인증을 사용하지 않고 REST 인증을 활성화하는 방법이 있습니까? 감사합니다.

답변

1

마지막 질문은 "네이티브 클라이언트 인증을 사용하지 않고 REST 인증을 사용할 수있는 방법이 있습니까?"대답은 '아니오'입니다. 클러스터에 보안을 설정하면 모든 통신 채널에서 데이터를 보호해야합니다. 우리가 당신이 그것을 비활성화 할 수 있다면, 그것은 당신의 클러스터를 취약하게 만들 것입니다.

표시되는 오류 메시지까지는 시로 세션이 시간 초과 된 것처럼 보입니다. 현재 사용중인 Geode 버전은 무엇입니까? 우리는 얼마 전에 세션 타임 아웃 문제를 수정했습니다.

+0

감사합니다. Shiro를 설정하는 방법이있을 수 있습니다. "나를 기억해"그리고 세션이 시간 초과되지 않습니까? Geode 버전은 1.2.0이므로 우리는 1.2.1로 업그레이드 할 수 있으며 마지막으로 보안에 관한 요점을 얻는 동안 네트워크 외부의 HTTPS 나머지 클라이언트와 네트워크 내부의 TCP 기본 클라이언트간에 약간의 차이점이 있습니다.우리는 모든 것을 알지는 못하나, 네트워크 내에서 보안 된 것으로 알고 있습니다. 네트워크 보안에 의존 할 수 있을까요? Hmmm – rupweb

+1

1.2.0 버전을 사용하고 있다면 이미 수정이되어 있어야하며 시간 초과 문제가되지 않습니다. 다른 일이 계속되어야합니다. 자바 클라이언트로 해봤습니까? – jliao

+1

클라이언트가 이미 서버에 활성 프록시를 가지고 있고 새 프록시를 만들려고하는 것처럼 보입니다. – jliao