設定外部目錄服務的 S3 存取
從 ONTAP 9.14.1 開始、外部目錄的服務已與 ONTAP S3 物件儲存設備整合。這項整合可透過外部目錄服務簡化使用者和存取管理。
您可以為屬於外部目錄服務的使用者群組提供存取 ONTAP 物件儲存環境的權限。輕量型目錄存取傳輸協定( LDAP )是與 Active Directory 等目錄服務進行通訊的介面、可為身分識別與存取管理( IAM )提供資料庫和服務。若要提供存取權、您必須在 ONTAP S3 環境中設定 LDAP 群組。設定存取權限之後、群組成員就擁有 ONTAP S3 工作區的權限。如需 LDAP 的相關資訊、請參閱 "使用LDAP的總覽"。
您也可以將 Active Directory 使用者群組設定為快速繫結模式、以便驗證使用者認證、並透過 LDAP 連線驗證協力廠商和開放原始碼 S3 應用程式。
在設定 LDAP 群組及啟用群組存取的快速繫結模式之前、請先確認下列事項:
-
已建立啟用 S3 的儲存 VM 、其中包含 S3 伺服器。請參閱 "為S3建立SVM"。
-
該儲存 VM 中已建立一個儲存區。請參閱 "建立儲存庫"。
-
在儲存 VM 上設定 DNS 。請參閱 "設定DNS服務"。
-
儲存 VM 上會安裝 LDAP 伺服器的自我簽署根憑證授權單位( CA )憑證。請參閱 "在SVM上安裝自我簽署的根CA憑證"。
-
LDAP 用戶端在 SVM 上設定為啟用 TLS 。請參閱 "建立LDAP用戶端組態" 和 "將 LDAP 用戶端組態與 SVM 建立關聯以取得資訊"。
設定外部目錄服務的 S3 存取
-
將 LDAP 指定為 SVM 的名稱服務資料庫 _ 、以用於群組、並將密碼指定為 LDAP :
ns-switch modify -vserver <vserver-name> -database group -sources files,ldap ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldap
如需此命令的詳細資訊、請參閱 "Vserver服務名稱服務ns交換器修改" 命令。
-
使用建立物件儲存庫貯體原則聲明
principal
設定為您要授與存取權的 LDAP 群組:object-store-server bucket policy statement create -bucket <bucket-name> -effect allow -principal nasgroup/<ldap-group-name> -resource <bucket-name>, <bucket-name>/*
範例:下列範例建立的 Bucket 原則陳述式
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/*
-
驗證 LDAP 群組中的使用者
group1
能夠從 S3 用戶端執行 S3 作業。
使用 LDAP 快速繫結模式進行驗證
-
將 LDAP 指定為 SVM 的名稱服務資料庫 _ 、以用於群組、並將密碼指定為 LDAP :
ns-switch modify -vserver <vserver-name> -database group -sources files,ldap ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldap
如需此命令的詳細資訊、請參閱 "Vserver服務名稱服務ns交換器修改" 命令。
-
確保存取 S3 儲存貯體的 LDAP 使用者具有在儲存庫原則中定義的權限。如需詳細資訊、請參閱 "修改庫位原則"。
-
確認 LDAP 群組中的使用者可以執行下列作業:
-
以下列格式設定 S3 用戶端上的存取金鑰:
"NTAPFASTBIND" + base64-encode(user-name:password)
範例:"NTAPFASTBIND"
+ base64 編碼( LDAP 使用者:密碼)、結果是
NTAPFASTBINDbGRhcHVzZXI6cGFzc3dvcmQ=
S3 用戶端可能會提示輸入秘密金鑰。如果沒有秘密金鑰、則可以輸入至少 16 個字元的任何密碼。 -
從使用者具有權限的 S3 用戶端執行基本 S3 作業。
-
Active Directory 的資源驗證、適用於沒有 UID 和 GID 的使用者
如果在 Bucket 原則陳述中指定的 nasgroup 或 nasgroup 的使用者沒有 UID 和 GID 集、當找不到這些屬性時、查詢將會失敗。
為了避免查詢失敗、 NetApp 建議使用受信任的網域進行 UPN 格式的資源授權: nasgroup/group@trusted_domain.com
在不使用 LDAP 快速繫結時、為信任的網域使用者產生使用者存取金鑰
將端點與以 UPN 格式指定的使用者一起使用 s3/services/<svm_uuid>/users
。範例:
$curl -siku FQDN\\user:<user_name> -X POST https://<LIF_IP_Address>/api/protocols/s3/services/<SVM_UUID>/users -d {"comment":"<S3_user_name>", "name":<user[@fqdn](https://github.com/fqdn)>,"<key_time_to_live>":"PT6H3M"}'