Ermöglichen Sie LDAP- oder Domänenbenutzern, ihre eigenen ONTAP S3-Zugriffsschlüssel zu generieren
Ab ONTAP 9.14.1 können Sie als ONTAP-Administrator benutzerdefinierte Rollen erstellen und sie lokalen oder Domänengruppen oder LDAP-Gruppen (Lightweight Directory Access Protocol) zuweisen, sodass die Benutzer dieser Gruppen ihren eigenen Zugriff und geheime Schlüssel für den S3-Clientzugriff generieren können.
Sie müssen für die Storage-VM einige Konfigurationsschritte durchführen, um die benutzerdefinierte Rolle zu erstellen und dem Benutzer zuzuweisen, der die API zur Schlüsselgenerierung nach dem Zugriff aktiviert.
|
|
Wenn LDAP deaktiviert ist, können Sie "Konfigurieren externer Verzeichnisdienste für den ONTAP S3-Zugriff" um Benutzern das Generieren von Zugriffsschlüsseln zu ermöglichen. |
Stellen Sie Folgendes sicher:
-
Es wurde eine S3-fähige Storage-VM erstellt, die einen S3-Server enthält. Siehe "Erstellung einer SVM für S3".
-
In dieser Storage-VM wurde ein Bucket erstellt. Siehe "Erstellen eines Buckets".
-
DNS ist auf der Storage-VM konfiguriert. Siehe "Konfigurieren Sie DNS-Dienste".
-
Auf der Storage-VM wird ein selbstsigniertes CA-Zertifikat (Root Certification Authority) des LDAP-Servers installiert. Siehe "Installieren Sie selbstsignierte Stamm-CA-Zertifikate auf der SVM".
-
Ein LDAP-Client wird auf der Storage-VM mit aktiviertem TLS konfiguriert. Siehe "Erstellen Sie LDAP-Clientkonfigurationen für den ONTAP NFS-Zugriff".
-
Verknüpfen Sie die Client-Konfiguration mit dem Vserver. Siehe "LDAP-Clientkonfigurationen mit ONTAP NFS SVMs verknüpfen". Erfahren Sie mehr über
vserver services name-service ldap createin der "ONTAP-Befehlsreferenz". -
Wenn Sie eine Storage-VM verwenden, erstellen Sie eine Management-Netzwerkschnittstelle (LIF) und auf der VM, und außerdem eine Service-Richtlinie für die LIF. Erfahren Sie mehr über
network interface createundnetwork interface service-policy createin der "ONTAP-Befehlsreferenz".
Konfigurieren Sie Benutzer für die Generierung des Zugriffsschlüssels
-
Geben Sie LDAP als Name Service Database der Speicher-VM für die Gruppe und Passwort für LDAP an:
ns-switch modify -vserver <vserver-name> -database group -sources files,ldap ns-switch modify -vserver <vserver-name> -database passwd -sources files,ldapErfahren Sie mehr über
vserver services name-service ns-switch modifyin der "ONTAP-Befehlsreferenz". -
Benutzerdefinierte Rolle mit Zugriff auf den REST-API-Endpunkt des S3-Benutzers erstellen:
security login rest-role create -vserver <vserver-name> -role <custom-role-name> -api "/api/protocols/s3/services/*/users" -access <access-type>In diesem Beispiels3-rolewird die Rolle für Benutzer auf der Storage-VM generiertsvm-1, denen alle Zugriffsrechte, Lesen, Erstellen und Aktualisieren gewährt werden.security login rest-role create -vserver svm-1 -role s3role -api "/api/protocols/s3/services/*/users" -access all
Erfahren Sie mehr über
security login rest-role createin der "ONTAP-Befehlsreferenz". -
Erstellen Sie eine LDAP-Benutzergruppe mit dem
security loginund fügen Sie die neue benutzerdefinierte Rolle für den Zugriff auf den REST-API-Endpunkt des S3-Benutzers hinzu. Erfahren Sie mehr übersecurity login createim "ONTAP-Befehlsreferenz" .security login create -user-or-group-name <ldap-group-name> -application http -authentication-method nsswitch -role <custom-role-name> -is-ns-switch-group yesIn diesem Beispiel
ldap-group-1wird die LDAP-Gruppe in erstelltsvm-1, und die benutzerdefinierte Rolles3rolewird ihr für den Zugriff auf den API-Endpunkt hinzugefügt, zusammen mit der Aktivierung des LDAP-Zugriffs im Modus „Fast BIND“.security login create -user-or-group-name ldap-group-1 -application http -authentication-method nsswitch -role s3role -is-ns-switch-group yes -second-authentication-method none -vserver svm-1 -is-ldap-fastbind yes
Weitere Informationen finden Sie unter "Verwenden Sie LDAP Fast Bind für die NSswitch-Authentifizierung für ONTAP NFS SVMs".
Erfahren Sie mehr über
security login createin der "ONTAP-Befehlsreferenz".
Das Hinzufügen der benutzerdefinierten Rolle zur LDAP-Gruppe ermöglicht Benutzern in dieser Gruppe einen eingeschränkten Zugriff auf die ONTAP /api/protocols/s3/services/{svm.uuid}/users Endpunkt. Durch Aufrufen der API können die LDAP-Gruppenbenutzer ihre eigenen Zugriffs- und Geheimschlüssel für den Zugriff auf den S3-Client generieren. Sie können die Schlüssel nur für sich selbst und nicht für andere Benutzer generieren.
-
Erstellen Sie eine benutzerdefinierte Rolle mit Zugriff auf den S3-Benutzer-REST-API-Endpunkt:
security login rest-role create -vserver <vserver-name> -role <custom-role-name> -api "/api/protocols/s3/services/*/users" -access <access-type>
In diesem Beispiel s3-role Rolle wird für Benutzer auf der Speicher-VM generiert svm-1 , dem alle Zugriffsrechte Lesen, Erstellen und Aktualisieren gewährt werden.
security login rest-role create -vserver svm-1 -role s3role -api "/api/protocols/s3/services/*/users" -access all
Erfahren Sie mehr über security login rest-role create in der "ONTAP-Befehlsreferenz".
-
Erstellen Sie eine Domänenbenutzergruppe mit dem
security loginund fügen Sie die neue benutzerdefinierte Rolle für den Zugriff auf den REST-API-Endpunkt des S3-Benutzers hinzu. Erfahren Sie mehr übersecurity login createim "ONTAP-Befehlsreferenz" .security login create -vserver <vserver-name> -user-or-group-name domain\<group-name> -application http -authentication-method domain -role <custom-role-name>In diesem Beispiel die Domänengruppe
domain\group1entsteht insvm-1und die benutzerdefinierte Rolles3rolewird für den Zugriff auf den API-Endpunkt hinzugefügt.security login create -user-or-group-name domain\group1 -application http -authentication-method domain -role s3role -vserver svm-1
Erfahren Sie mehr über
security login createin der "ONTAP-Befehlsreferenz".
Das Hinzufügen der benutzerdefinierten Rolle zur Domänengruppe ermöglicht Benutzern in dieser Gruppe einen eingeschränkten Zugriff auf die ONTAP /api/protocols/s3/services/{svm.uuid}/users Endpunkt. Durch Aufrufen der API können die Domänengruppenbenutzer ihre eigenen Zugriffs- und Geheimschlüssel für den Zugriff auf den S3-Client generieren. Sie können die Schlüssel nur für sich selbst und nicht für andere Benutzer generieren.
Generieren Sie als S3- oder LDAP-Benutzer eigene Zugriffsschlüssel
Ab ONTAP 9.14.1 können Sie eigene Zugriffs- und geheime Schlüssel für den Zugriff auf S3-Clients generieren, sofern Ihr Administrator Ihnen die Rolle zum Generieren eigener Schlüssel eingeräumt hat. Sie können Schlüssel nur für sich selbst generieren, indem Sie den folgenden ONTAP REST-API-Endpunkt verwenden.
Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt. Weitere Informationen zu diesem Endpunkt finden Sie in der Referenz "API-Dokumentation" .
| HTTP-Methode | Pfad |
|---|---|
POST |
/API/Protokolle/s3/Services/{svm.uuid}/Benutzer |
Verwenden Sie für Domänenbenutzer das folgende Format für den S3-Benutzernamen: user@fqdn , Wo fqdn ist der vollqualifizierte Domänenname der Domäne.
curl
--request POST \
--location "https://$FQDN_IP /api/protocols/s3/services/{svm.uuid}/users " \
--include \
--header "Accept: */*" \
--header "Authorization: Basic $BASIC_AUTH"
--data '{"name":"user1@example.com"}'
{
"records": [
{
"access_key": "4KX07KF7ML8YNWY01JWG",
"_links": {
"next": {
"href": "/api/resourcelink"
},
"self": {
"href": "/api/resourcelink"
}
},
"name": "user1@example.com",
"secret_key": "<secret_key_value>"
}
],
"num_records": "1"
}
Wenn bereits ein S3-Benutzer vorhanden ist, können Sie dessen Zugriffs- und Geheimschlüssel neu generieren. Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt.
| HTTP-Methode | Pfad |
|---|---|
PATCH |
/api/protocols/s3/services/{svm.uuid}/users/{name} |
curl
--request PATCH \
--location "https://$FQDN_IP /api/protocols/s3/services/{svm.uuid}/users/{name} " \
--include \
--header "Authorization: Basic $BASIC_AUTH" \
--data '{"regenerate_keys":"True"}'
{
"records": [
{
"access_key": "DX12U609DMRVD8U30Z1M",
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "user1@example.com",
"secret_key": "<secret_key_value>"
}
],
"num_records": "1"
}