Häufig gestellte Fragen zur Authentifizierung mit IBM Cloudant
Bei IBM Cloud® Identity and Access Management (IAM) wird die Verwaltung von Benutzeridentitäten, Services und der Zugriffssteuerung in einem einzigen Ansatz kombiniert. IBM® Cloudant® for IBM Cloud® kann in IBM Cloud Identity and Access Management integriert werden.
Welche Unterschiede gibt es zwischen traditionellen IBM Cloudant-Zugriffssteuerungsmechanismen und den IAM-Zugriffssteuerungsmechanismen?
IBM Cloud IAM
- Zentral verwaltetes Zugriffsmanagement für IBM Cloud.
- Zugriffsmöglichkeit für Benutzer oder Services auf zahlreiche unterschiedliche Ressourcen mithilfe der gleichen Gruppe von Berechtigungsnachweisen (z. B. Benutzername und Kennwort oder IAM-API-Schlüssel).
- IAM-API-Schlüsseln kann der Zugriff auf die Kontomanagementfunktionen (z. B. zum Erstellen neuer Datenbanken) erteilt werden.
Traditionelle Version von IBM Cloudant
- Nur für IBM Cloudant.
- Für den Zugriff auf die verschiedenen Serviceinstanzen sind eigene Berechtigungsnachweisgruppen erforderlich.
- Verwendung der HTTP-Basisauthentifizierung mit Berechtigungsnachweisen, die nicht an einen bestimmten Benutzer oder Service gebunden sind.
Warum wird der Modus Nur IAM verwenden bevorzugt?
Im Modus Nur IAM verwenden werden ausschließlich IAM-Berechtigungsnachweise über die Servicebindung und die Berechtigungsnachweisgenerierung bereitgestellt. Die Verwendung von IBM Cloud bietet folgende Vorteile:
- Verwaltung des Zugriffs für IBM Cloudant mit den Standardtools von IBM Cloud.
- Verwendung der Berechtigungsnachweise, die Sie ohne großen Aufwand widerrufen und turnusmäßig wechseln können, wenn Sie IBM Cloud IAM verwenden.
Weitere Informationen zu den Vor- und Nachteilen dieser Modi finden Sie unter Vorteile und Nachteile der beiden Zugriffssteuerungsmechanismen.
Wie kann ich eine Instanz über die Befehlszeile erstellen?
Wenn Sie eine neue IBM Cloudant-Instanz über die Befehlszeile erstellen, müssen Sie das Tool ibmcloud mit dem Parameter -p einschließen. Dieser Parameter aktiviert oder inaktiviert traditionelle Berechtigungsnachweise
für ein Konto, indem die Option im JSON-Format übergeben wird. Die Option heißt legacyCredentials.
Führen Sie den folgenden Befehl aus, um eine Instanz unter Verwendung des Modus Nur IAM verwenden zu erstellen:
ibmcloud resource service-instance-create "Instance Name" \
cloudantnosqldb Standard us-south \
-p '{"legacyCredentials": false}'
Wenn Sie beim Verwenden der IAM-Rollen 'Leseberechtigter' (Reader) und 'Schreibberechtigter' (Writer) nicht den Modus Nur IAM verwenden verwenden, kann es sein, dass Sie Benutzern traditionelle Berechtigungsnachweise mit weitergehenderen Zugriffsberechtigungen erteilen, als von Ihnen beabsichtigt.
Wie kann ich Serviceberechtigungsnachweise erstellen?
Sie können Serviceberechtigungsnachweise in der primären IBM Cloud-IAM-Schnittstelle generieren. Wenn Sie Nur IAM verwenden auswählen, enthalten die Serviceberechtigungsnachweise nur IAM-Werte. Das JSON-Format der Serviceberechtigungsnachweise sieht wie im folgenden Beispiel aus:
{
"apikey": "MxVp86XHkU82Wc97tdvDF8qM8B0Xdit2RqR1mGfVXPWz",
"host": "2922d728-27c0-4c7f-aa80-1e59fbeb04d0-bluemix.cloudant.com",
"iam_apikey_description": "Auto generated apikey during resource-key [...]",
"iam_apikey_name": "auto-generated-apikey-050d21b5-5f[...]",
"iam_role_crn": "crn:v1:bluemix:public:iam::::serviceRole:Manager",
"iam_serviceid_crn": "crn:v1:staging:public:iam-identity::[...]",
"url": "https://76838001-b883-444d-90d0-46f89e942a15-bluemix.cloudant.com",
"username": "76838001-b883-444d-90d0-46f89e942a15-bluemix"
}
Die Werte für das vorherige Beispiel werden in der folgenden Liste beschrieben:
apikey- IAM-API-Schlüssel.
host- Der DNS, der die Domänennamen mit den entsprechenden IP-Adressen auflöst.
iam_apikey_description- Beschreibung des IAM-API-Schlüssels.
iam_apikey_name- ID des IAM-API-Schlüssels.
iam_role_crn- Die IAM-Rolle, die dem IAM-API-Schlüssel zugeordnet wurde.
iam_serviceid_crn- Die CRN der Service-ID.
url- IBM Cloudant-Service-URL.
username- Der interne IBM Cloudant-Kontoname.
Weitere Informationen finden Sie unter IBM Cloud'API-Schlüssel' und nur 'IAM verwenden'.
Wie kann ich meine Berechtigungsnachweise turnusmäßig wechseln?
In den meisten Fällen ist der turnusmäßige Wechsel von Berechtigungsnachweisen ein einfacher Prozess:
-
Generieren Sie einen Serviceberechtigungsnachweis als Ersatz. Weitere Informationen finden Sie unter „ Wie kann ich Dienstanmeldedaten generieren? “.
-
Ersetzen Sie den aktuellen Berechtigungsnachweis durch den neu generierten Berechtigungsnachweis.
-
Löschen Sie den nicht mehr verwendeten Serviceberechtigungsnachweis.
Wenn Sie jedoch die Berechtigungsnachweise für eine Replikation turnusmäßig wechseln und traditionelle Berechtigungsnachweise im Replikationsdokument verwenden, beginnt die Replikation ganz am Anfang. Um sicherzustellen, dass Änderungen rechtzeitig eingehen, wird empfohlen, eine neue Replikation zu erstellen, sobald die vorherige Replikation und der zugehörige Serviceberechtigungsnachweis gelöscht ist. Der Ablauf wird in den folgenden Schritten beschrieben:
-
Generieren Sie einen Serviceberechtigungsnachweis als Ersatz. Weitere Informationen finden Sie unter „ Wie kann ich Dienstanmeldedaten generieren? “.
-
Erstellen Sie eine Replikation mit denselben Einstellungen, aber mit neuen Berechtigungsnachweisen.
-
Überwachen Sie die neue Replikation mit Active Tasks oder mit
_scheduler/jobs. -
Sobald das Feld
changes_pendingfür die neue Replikation einen entsprechend niedrigen Wert für Ihre Anforderungen enthält, kann die Replikation, die die vorherigen Berechtigungsnachweise verwendet, gelöscht werden. -
Löschen Sie den nicht mehr verwendeten Serviceberechtigungsnachweis.
Replikationen, die IAM-API-Schlüssel verwenden, können aktualisiert werden, um einen neuen API-Schlüssel direkt zu verwenden, ohne die Änderungen zu verzögern, die repliziert werden.