Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

ONTAP S3 액세스를 위한 외부 디렉토리 서비스를 구성합니다

기여자 netapp-dbagwell johnlantz netapp-barbe netapp-aaron-holt netapp-lenida netapp-aherbin netapp-ahibbard

ONTAP 9.14.1부터 외부 디렉토리용 서비스가 ONTAP S3 오브젝트 스토리지와 통합되었습니다. 이러한 통합은 외부 디렉터리 서비스를 통한 사용자 및 액세스 관리를 단순화합니다.

ONTAP 오브젝트 스토리지 환경에 대한 액세스 권한을 통해 외부 디렉토리 서비스에 속하는 사용자 그룹을 제공할 수 있습니다. LDAP(Lightweight Directory Access Protocol)는 ID 및 액세스 관리(IAM)를 위한 데이터베이스와 서비스를 제공하는 Active Directory와 같은 디렉터리 서비스와 통신하는 인터페이스입니다. 액세스를 제공하려면 ONTAP S3 환경에서 LDAP 그룹을 구성해야 합니다. 액세스를 구성하면 그룹 구성원에게 ONTAP S3 버킷에 대한 권한이 부여됩니다. LDAP에 대한 자세한 내용은 를 "ONTAP NFS SVM에서 LDAP 이름 서비스 사용에 대해 알아보세요"참조하십시오.

또한 빠른 바인딩 모드에 맞게 Active Directory 사용자 그룹을 구성하여 사용자 자격 증명을 검증하고 LDAP 연결을 통해 타사 및 오픈 소스 S3 응용 프로그램을 인증할 수 있습니다.

시작하기 전에

LDAP 그룹을 구성하고 그룹 액세스를 위해 빠른 바인딩 모드를 활성화하기 전에 다음 사항을 확인하십시오.

  1. S3 서버가 포함된 S3 사용 스토리지 VM이 생성되었습니다. 을 참조하십시오 "S3를 위해 SVM을 생성합니다".

  2. 해당 스토리지 VM에 버킷이 생성되었습니다. 을 참조하십시오 "버킷을 만듭니다".

  3. 스토리지 VM에 DNS가 구성되어 있다. 을 "DNS 서비스를 구성합니다"참조하십시오.

  4. LDAP 서버의 자체 서명된 루트 CA(인증 기관) 인증서가 스토리지 VM에 설치되어 있습니다. 을 "SVM에 자체 서명된 루트 CA 인증서 설치"참조하십시오.

  5. LDAP 클라이언트는 SVM에서 TLS를 사용하도록 구성했습니다. "ONTAP NFS 액세스를 위한 LDAP 클라이언트 구성 생성"및 을 "정보를 위해 ONTAP NFS SVM과 LDAP 클라이언트 구성을 연결합니다."참조하십시오.

LDAP에 대한 S3 액세스를 구성합니다

  1. 그룹에 대한 SVM의 _NAME 서비스 데이터베이스_로 LDAP를 지정하고 LDAP에 대한 암호를 지정합니다.

    ns-switch modify -vserver <vserver-name> -database group -sources files,ldap
    ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldap

    ONTAP 명령 참조에서 https://docs .NetApp.com/us-en/ONTAP-cli/vserver-services-name-service-ns-switch-modify.html 명령 링크에 대해 자세히[vserver services name-service ns-switch modify 알아보십시오.

  2. 를 사용하여 오브젝트 저장소 버킷 정책 문을 생성합니다 principal 액세스 권한을 부여할 LDAP 그룹으로 설정합니다.

    object-store-server bucket policy statement create -bucket <bucket-name> -effect allow -principal nasgroup/<ldap-group-name> -resource <bucket-name>, <bucket-name>/*

    예: 다음 예제에서는 에 대한 버킷 정책 문을 만듭니다 buck1. 이 정책은 LDAP 그룹에 대한 액세스를 허용합니다 group1 리소스(버킷 및 해당 객체)에 buck1.

    vserver object-store-server bucket policy add-statement -bucket buck1 -effect allow -action
    GetObject,PutObject,DeleteObject,ListBucket,GetBucketAcl,GetObjectAcl,ListBucketMultipartUploads,ListMultipartUploadParts, ListBucketVersions,GetObjectTagging,PutObjectTagging,DeleteObjectTagging,GetBucketVersioning,PutBucketVersioning -principal nasgroup/group1 -resource buck1, buck1/*
  3. LDAP 그룹의 사용자를 확인합니다 group1 는 S3 클라이언트에서 S3 작업을 수행할 수 있습니다.

인증에 LDAP 빠른 바인드 모드를 사용합니다

  1. 그룹에 대한 SVM의 _NAME 서비스 데이터베이스_로 LDAP를 지정하고 LDAP에 대한 암호를 지정합니다.

    ns-switch modify -vserver <vserver-name> -database group -sources files,ldap
    ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldap

    ONTAP 명령 참조에서 https://docs .NetApp.com/us-en/ONTAP-cli/vserver-services-name-service-ns-switch-modify.html 명령 링크에 대해 자세히[vserver services name-service ns-switch modify 알아보십시오.

  2. S3 버킷에 액세스하는 LDAP 사용자에게 버킷 정책에 정의된 권한이 있는지 확인합니다. 자세한 내용은 을 참조하십시오 "버킷 정책을 수정합니다".

  3. LDAP 그룹의 사용자가 다음 작업을 수행할 수 있는지 확인합니다.

    1. S3 클라이언트의 액세스 키를 다음 형식으로 구성합니다
      "NTAPFASTBIND" + base64-encode(user-name:password). 예 "NTAPFASTBIND": +base64-encode(ldapuser:password)
      NTAPFASTBINDbGRhcHVzZXI6cGFzc3dvcmQ=

      참고 S3 클라이언트에서 비밀 키를 입력하라는 메시지가 표시될 수 있습니다. 비밀 키가 없으면 16자 이상의 암호를 입력할 수 있습니다.
    2. 사용자에게 권한이 있는 S3 클라이언트에서 기본 S3 작업을 수행합니다.

Base64 자격 증명

ONTAP S3의 기본 구성은 HTTP를 제외하며 HTTPS 및 TLS(전송 계층 보안) 연결만 사용합니다. ONTAP는 자체 서명된 인증서를 생성할 수 있지만 타사 CA(인증 기관)의 인증서를 사용하는 것이 좋습니다. CA 인증서를 사용할 때는 클라이언트 응용 프로그램과 ONTAP 개체 저장소 서버 간에 신뢰할 수 있는 관계를 만듭니다.

Base64로 인코딩된 자격 증명은 쉽게 디코딩됩니다. HTTPS를 사용하면 인코딩된 자격 증명이 중간자 패킷 스니퍼에 의해 캡처되지 않습니다.

사전 서명된 URL을 생성할 때 인증에 LDAP Fast-bind 모드를 사용하지 마십시오. 인증은 사전 서명된 URL에 포함된 Base64 액세스 키만을 기반으로 합니다. Base64 액세스 키를 디코딩하는 모든 사용자에게 사용자 이름과 암호가 표시됩니다.

인증 방법은 nsswitch이고 LDAP가 설정된 예입니다

$curl -siku <user>:<user_password> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user>,"key_time_to_live":"PT6H3M"}
참고 API를 SVM의 데이터 LIF가 아니라 클러스터 관리 LIF로 지정합니다. 사용자가 자신의 키를 생성하도록 허용하려면 해당 역할에 HTTP 권한을 추가하여 curl을 사용해야 합니다. 이 권한은 S3 API 권한에 추가됩니다.

Active Directory 또는 SMB 서버에 대한 S3 액세스 구성

버킷 정책 문에 지정된 nasgroup 또는 nasgroup에 속한 사용자에게 UID 및 GID가 설정되지 않은 경우 이러한 특성을 찾을 수 없으면 조회가 실패합니다. Active Directory는 UID가 아닌 SID를 사용합니다. SID 항목을 UID에 매핑할 수 없는 경우 필요한 데이터를 ONTAP로 가져와야 합니다.

그렇게 하려면 SVM이 Active Directory로 인증되고 필요한 사용자 및 그룹 정보를 가져올 수 있도록 을 "SVM active-directory create 를 참조하십시오"사용하십시오.

또는 를 사용하여 "SVM CIFS 생성"Active Directory 도메인에 SMB 서버를 생성합니다.

네임 서버와 개체 저장소에 서로 다른 도메인 이름을 사용하는 경우 조회 실패가 발생할 수 있습니다. 조회 실패를 방지하기 위해 NetApp UPN 형식의 리소스 권한 부여에 신뢰할 수 있는 도메인을 사용할 것을 권장합니다. nasgroup/group@trusted_domain.com 신뢰할 수 있는 도메인은 SMB 서버의 신뢰할 수 있는 도메인 목록에 추가된 도메인입니다. 방법을 알아보세요. "선호하는 신뢰할 수 있는 도메인을 추가, 제거 및 수정합니다." SMB 서버 목록에서.

인증 방법이 도메인이고 신뢰할 수 있는 도메인이 Active Directory에 구성된 경우 키를 생성합니다

`s3/services/<svm_uuid>/users`UPN 형식으로 지정된 사용자가 있는 끝점을 사용합니다. 예:
$curl -siku FQDN\\user:<user_password> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user@fqdn>,"key_time_to_live":"PT6H3M"}
참고 API를 SVM의 데이터 LIF가 아니라 클러스터 관리 LIF로 지정합니다. 사용자가 자신의 키를 생성하도록 허용하려면 해당 역할에 HTTP 권한을 추가하여 curl을 사용해야 합니다. 이 권한은 S3 API 권한에 추가됩니다.

인증 방법이 도메인이고 신뢰할 수 있는 도메인이 없는 경우 키를 생성합니다

이 작업은 LDAP가 비활성화되어 있거나 POSIX 사용자가 UID 및 GID를 구성하지 않은 경우에 가능합니다. 예:

$curl -siku FQDN\\user:<user_password> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user[@fqdn]>,"key_time_to_live":"PT6H3M"}
참고 API를 SVM의 데이터 LIF가 아니라 클러스터 관리 LIF로 지정합니다. 사용자가 자신의 키를 생성하도록 허용하려면 해당 역할에 HTTP 권한을 추가하여 curl을 사용해야 합니다. 이 권한은 S3 API 권한에 추가됩니다. 신뢰할 수 있는 도메인이 없는 경우 사용자 이름에 선택적 도메인 값(@FQDN)만 추가하면 됩니다.