검색

55.3. RBCD를 사용하여 서비스에 대한 액세스 위임

download PDF

RBCD를 사용하여 서비스에 대한 액세스를 위임하려면 서비스가 실행 중인 호스트에 규칙을 추가해야 합니다. 이 예제 절차에서는 Kerberos 서비스 HTTP/client.example.test 를 사용하여 웹 애플리케이션의 파일 서버 nfs/client.example.test 에 사용자 자격 증명을 위임하는 방법을 설명합니다. 호스트가 항상 자체적으로 실행되는 서비스를 관리하므로 client.example.test 호스트에서 이 작업을 수행할 수 있습니다.

사전 요구 사항

  • client.example.test 호스트의 /etc/krb5.keytab 파일에 액세스할 수 있습니다.
  • nfs/client.example.test 서비스 키탭이 있습니다.
  • HTTP/client.example.test 의 키탭 /path/to/web-service.keytab 이 있습니다.

절차

  1. client.example.test 호스트에서 Kerberos 티켓을 받습니다.

    # kinit -k
  2. RBCD ACL을 정의합니다.

    # ipa service-add-delegation nfs/client.example.test HTTP/client.example.test
    
    -------------------------------------------------------
    Added new resource delegation to the service principal "nfs/client.example.test@EXAMPLE.TEST"
    -------------------------------------------------------
      Principal name: nfs/client.example.test@EXAMPLE.TEST
      Delegation principal: HTTP/client.example.test@EXAMPLE.TEST

검증

위임이 올바르게 설정되었는지 확인하려면 HTTP 서비스를 통해 testuser 사용자 로그인을 시뮬레이션하고 NFS 서비스로 프로토콜 전환을 수행할 수 있습니다.

  1. NFS 서비스를 보고 위임 규칙이 있는지 확인합니다.

    # ipa service-show nfs/client.example.test
    
      Principal name: nfs/client.example.test@EXAMPLE.TEST
      Principal alias: nfs/client.example.test@EXAMPLE.TEST
      Delegation principal: HTTP/client.example.test@EXAMPLE.TEST
      Keytab: True
      Managed by: client.example.test
  2. HTTP 서비스 주체의 Kerberos 티켓을 받습니다.

    # kinit -kt http.keytab HTTP/client.example.test
  3. 티켓 부여 티켓이 있는지 확인합니다.

    # klist -f
    Ticket cache: KCM:0:99799
    Default principal: HTTP/client.example.test@EXAMPLE.TEST
    
    Valid starting       Expires              Service principal
    10/13/2023 14:39:23  10/14/2023 14:05:07  krbtgt/EXAMPLE.TEST@EXAMPLE.TEST
    	Flags: FIA
  4. testuser 를 대신하여 프로토콜 전환을 수행합니다.

    # kvno -U testuser -P nfs/client.example.test
    nfs/client.example.test@EXAMPLE.TEST: kvno = 1
  5. testuser 를 대신하여 프로토콜 전환 중에 얻은 티켓이 있는지 확인합니다.

    # klist -f
    Ticket cache: KCM:0:99799
    Default principal: HTTP/client.example.test@EXAMPLE.TEST
    
    Valid starting       Expires              Service principal
    10/13/2023 14:39:38  10/14/2023 14:05:07  HTTP/client.example.test@EXAMPLE.TEST
    	for client testuser@EXAMPLE.TEST, Flags: FAT
    10/13/2023 14:39:23  10/14/2023 14:05:07  krbtgt/EXAMPLE.TEST@EXAMPLE.TEST
    	Flags: FIA
    10/13/2023 14:39:38  10/14/2023 14:05:07  nfs/client.example.test@EXAMPLE.TEST
    	for client testuser@EXAMPLE.TEST, Flags: FAT
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.