Erstellen Sie einen Benutzer
Sie können einen Benutzer mit spezifischen Anmeldedaten und einer vordefinierten Rolle erstellen. Sie können optional auch den Zugriff des Benutzers auf bestimmte Namespaces beschränken.
Schritt 1: Wählen Sie einen Benutzernamen
Führen Sie den Workflow aus "Benutzer auflisten" Und wählen Sie einen verfügbaren Namen aus, der derzeit nicht verwendet wird.
Schritt 2: Erstellen Sie den Benutzer
Führen Sie den folgenden REST-API-Aufruf aus, um einen Benutzer zu erstellen. Nach erfolgreichem Abschluss des Anrufs ist der neue Benutzer noch nicht nutzbar.
Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt.
HTTP-Methode | Pfad |
---|---|
POST |
/Accounts/{Account_id}/Core/v1/users |
curl --request POST \
--location "https://astra.netapp.io/accounts/$ACCOUNT_ID/core/v1/users" \
--include \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data @JSONinput
{
"type" : "application/astra-user",
"version" : "1.1",
"firstName" : "John",
"lastName" : "West",
"email" : "jwest@example.com"
}
{ "metadata": { "creationTimestamp": "2022-11-20T17:23:15Z", "modificationTimestamp": "2022-11-20T17:23:15Z", "createdBy": "a20e91f3-2c49-443b-b240-615d940ec5f3", "labels": [] }, "type": "application/astra-user", "version": "1.2", "id": "d07dac0a-a328-4840-a216-12de16bbd484", "authProvider": "local", "authID": "jwest@example.com", "firstName": "John", "lastName": "West", "companyName": "", "email": "jwest@example.com", "postalAddress": { "addressCountry": "", "addressLocality": "", "addressRegion": "", "streetAddress1": "", "streetAddress2": "", "postalCode": "" }, "state": "active", "sendWelcomeEmail": "false", "isEnabled": "true", "isInviteAccepted": "true", "enableTimestamp": "2022-11-20T17:23:15Z", "lastActTimestamp": "" }
Schritt 3: Optional die zulässigen Namespaces auswählen
Führen Sie den Workflow aus "Listen Sie die Namespaces auf" Und wählen Sie die Namespaces aus, auf die Sie den Zugriff beschränken möchten.
Schritt 4: Binden Sie den Benutzer an eine Rolle
Führen Sie den folgenden REST-API-Aufruf durch, um den Benutzer an eine Rolle zu binden. Das Beispiel unten beschränkt den Namespace-Zugriff nicht. Siehe "Erweiterte RBAC mit Namespace-Granularität" Finden Sie weitere Informationen.
Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt.
HTTP-Methode | Pfad |
---|---|
POST |
/Accounts/{Account_id}/Core/v1/roleBindungen |
curl --request POST \
--location "https://astra.netapp.io/accounts/$ACCOUNT_ID/core/v1/roleBindings" \
--include \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data @JSONinput
{
"type" : "application/astra-roleBinding",
"version" : "1.1",
"userID" : "d07dac0a-a328-4840-a216-12de16bbd484",
"accountID" : "29e1f39f-2bf4-44ba-a191-5b84ef414c95",
"role" : "viewer",
"roleConstraints": [ "*" ]
}
Schritt 5: Erstellen Sie eine Anmeldeinformation
Führen Sie den folgenden REST-API-Aufruf durch, um eine Berechtigung zu erstellen und sie dem Benutzer zuzuordnen. Dieses Beispiel verwendet ein Passwort, das als base64-Wert angegeben wird. Der name
Eigenschaft sollte die ID des im vorherigen Schritt zurückgegebenen Benutzers enthalten. Die Eingabeeigenschaft change
Muss auch in base64 kodiert werden und bestimmt, ob der Benutzer bei der ersten Anmeldung sein Passwort ändern muss (true
Oder false
).
Dieser Schritt ist nur bei Astra Control Center-Implementierungen mit lokaler Authentifizierung erforderlich. Bei Implementierungen des Astra Control Center mit LDAP oder mit Astra Control Service sind dies nicht erforderlich. |
Dieser REST-API-Aufruf verwendet die folgende Methode und den folgenden Endpunkt.
HTTP-Methode | Pfad |
---|---|
POST |
/Accounts/{Account_id}/Core/v1/Credentials |
curl --request POST \
--location "https://astra.netapp.io/accounts/$ACCOUNT_ID/core/v1/credentials" \
--include \
--header "Accept: */*" \
--header "Authorization: Bearer $API_TOKEN" \
--data @JSONinput
{
"type" : "application/astra-credential",
"version" : "1.1",
"name" : "d07dac0a-a328-4840-a216-12de16bbd484",
"keyType" : "passwordHash",
"keyStore" : {
"cleartext" : "TmV0QXBwMTIz",
"change" : "ZmFsc2U="
},
"valid" : "true"
}