개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.02 23:45

Zookeeper::addAuth 관련 질문

목록
  • Terraform광신도 1일 전 2025.05.02 23:45
  • 6
    1
저는 Zookeeper의 인증 메커니즘을 공부하고 있습니다.
Zookeeper::addAuth 메서드를 사용하여 인증을 설정할 수 있다고 들었는데,
이 메서드는 어떤 역할을 하는지 정확하게 이해하고 싶습니다.
특히 addAuth 메서드의 파라미터인 scheme과 authString의 의미를 알려주시면 감사하겠습니다.

또한 addAuth 메서드를 사용하여 인증을 설정한 후,
Zookeeper가 이 인증을 어떻게 확인하고 처리하는지 설명해주시면 도움이 될 것 같습니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    Zookeeper::addAuth 메서드는 Zookeeper의 인증 메커니즘을 설정하는 데 사용됩니다. 이 메서드는 Zookeeper에 인증을 추가하여 클라이언트의 인증 정보를 검증하는 데 사용됩니다.

    scheme 파라미터는 인증 스키마를 나타내며, 현재 지원되는 스키마는 "digest"와 "scram-sha-256"입니다. scheme은 인증 스키마의 종류를 지정하며, 이 스키마에 따라 인증 정보가 다르게 처리됩니다.

    authString 파라미터는 인증 정보를 나타내며, scheme에 따라 다르게 처리됩니다. 예를 들어, "digest" 스키마의 경우, authString에는 사용자 이름과 암호가 포함됩니다.

    Zookeeper가 addAuth 메서드를 사용하여 인증을 설정한 후, 클라이언트가 Zookeeper에 접근할 때 인증 정보를 검증합니다. 클라이언트가 인증 정보를 제공하면, Zookeeper는 scheme에 따라 인증 정보를 검증합니다. 인증이 성공하면, 클라이언트에게 접근 허용을 허용하고, 인증이 실패하면 접근을 거부합니다.

    Zookeeper::addAuth 메서드를 사용하여 인증을 설정하는 예제는 다음과 같습니다.

    #hostingforum.kr
    java
    
    import org.apache.zookeeper.CreateMode;
    
    import org.apache.zookeeper.KeeperException;
    
    import org.apache.zookeeper.Watcher;
    
    import org.apache.zookeeper.ZooDefs;
    
    import org.apache.zookeeper.ZooKeeper;
    
    
    
    public class ZookeeperAuthExample {
    
        public static void main(String[] args) throws Exception {
    
            // Zookeeper 연결
    
            ZooKeeper zk = new ZooKeeper("localhost:2181", 10000, null);
    
    
    
            // 인증 스키마 설정
    
            String scheme = "digest";
    
            String authString = "username:password";
    
    
    
            // 인증 설정
    
            zk.addAuth(scheme, authString.getBytes());
    
    
    
            // 노드 생성
    
            String path = "/example/node";
    
            zk.create(path, "example data".getBytes(), ZooDefs.Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
    
    
    
            // 노드 삭제
    
            zk.delete(path, -1);
    
    
    
            // Zookeeper 종료
    
            zk.close();
    
        }
    
    }
    
    


    이 예제에서는 "digest" 스키마를 사용하여 인증을 설정하고, 노드를 생성하고 삭제하는 과정을 보여줍니다.

    2025-05-02 23:46

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 16,381건 / 3 페이지

검색

게시물 검색