Zugriff auf IBM Cloud Object Storage zum Importieren und Exportieren von Images erteilen
Um ein benutzerdefiniertes Bild in IBM Cloud VPC zu importieren oder ein benutzerdefiniertes Bild aus IBM Cloud VPC zu exportieren, müssen Sie eine Instanz von IBM Cloud® Object Storage zur Verfügung haben. Des Weiteren müssen Sie ein Bucket in Object Storage erstellen, in dem Ihre Images gespeichert werden können. Abschließend müssen Sie eine Berechtigung erstellen, damit der Image-Dienst für VPC auf Object Storage zugreifen kann.
IBM Cloud Object Storage-Serviceinstanz erstellen
Wenn Sie eine IBM Cloud Object Storage-Instanz erstellen müssen, finden Sie weitere Informationen in der Einführung in IBM Cloud Object Storage.
Unter „ Cloud Identity and Access Management “ müssen Sie eine Berechtigung erstellen, damit der Image-Dienst für VPC auf „ IBM Cloud Object Storage “ zugreifen kann.
Autorisierung erstellen
Um den Image-Service für VPC für den Zugriff auf den Zielservice IBM Cloud Object Storagezu berechtigen, müssen Sie eine Berechtigung erstellen. Um ein Bild zu importieren, müssen Sie die Reader-Service-Zugriffsrolle für Object Storage angeben. Um ein Image zu exportieren, müssen Sie die Servicezugriffsrolle 'Schreibberechtigter' für IBM Cloud Object Storageangeben. Mit den Service-Zugriffsrollen Reader und Writer für Object Storage können Sie Bilder sowohl importieren als auch exportieren.
Gewährung von Leser- und Schreiberzugriff in der Konsole
Führen Sie die folgenden Schritte aus, um eine Berechtigung für den Image Service for VPC zum Importieren von Images aus einer IBM Cloud Object Storage-Serviceinstanz und zum Exportieren von Images in eine IBM Cloud Object Storage-Serviceinstanz zu erstellen.
-
Klicken Sie in der Menüleiste der IBM Cloud-Konsole auf Verwalten > Zugriff (IAM) und wählen Sie Berechtigungen aus.
-
Klicken Sie auf der Seite „Berechtigungen verwalten“ auf „ Erstellen “.
-
Treffen Sie Ihre Auswahl für das Quellenkonto. Standardmäßig ist dieses Konto ausgewählt. Klicken Sie auf Weiter (Next).
-
Wählen Sie einen Quelldienst für die Autorisierung aus. Geben Sie „ VPC Infrastructure Services “ als Quelldienst an. Klicken Sie auf Weiter.
-
Wählen Sie für Ressourcen aus, wie Sie den Zugriff einschränken möchten.
- Wählen Sie Spezifische Ressourcen.
- Wählen Sie unter Spezifische Ressourcen den Ressourcentyp und den Bilddienst für VPC.
- Klicken Sie auf Weiter.
-
Wählen Sie für den Target-Dienst Cloud Object Storage. Klicken Sie auf Weiter.
-
Geben Sie bei Ressourcen an, wie Sie den Zugriff einschränken möchten. Sie können die Standardauswahl " Alle Ressourcen" verwenden. Klicken Sie auf Weiter.
Wenn Sie den Zugriff auf eine bestimmte Ressource innerhalb von IBM Cloud Object Storage einschränken möchten, können Sie Ressourcen anhand ausgewählter Attribute auswählen. Treffen Sie dann eine Auswahl, um den Zugang nach Ihren Präferenzen einzuschränken.
-
Wählen Sie unter Rollen die beiden Service-Zugangsrollen Leser und Schreiber.
-
Klicken Sie auf Überprüfen, um sicherzustellen, dass Ihre Auswahl richtig aussieht.
-
Klicken Sie auf Autorisieren.
Weitere Informationen finden Sie im Abschnitt über die Verwendung von Berechtigungen für die Zugriffserteilung zischen Services.
Leser-und Schreibzugriff auf alle Buckets über die Befehlszeilenschnittstelle erteilen
Führen Sie den Befehl iam authorization-policy-create aus, um Reader und Writer Zugriff auf alle Buckets in IBM Cloud Object Storagezu erteilen. Der folgende Befehl autorisiert den Image Service für VPC
zum Importieren von Bildern aus einem beliebigen Bucket in einer Object Storage Service-Instanz und zum Exportieren von Bildern in einen beliebigen Bucket in einer Object Storage Service-Instanz.
ibmcloud iam authorization-policy-create is cloud-object-storage Reader,Writer --source-resource-type image
Weitere Informationen finden Sie unter ibmcloud iam authorization-policy-create.
Zugriff auf ein bestimmtes Bucket über die Befehlszeilenschnittstelle erteilen
Sie können die Berechtigung für ein bestimmtes Bucket in IBM Cloud Object Storageerteilen. Das folgende Beispiel beschreibt, wie Sie Reader Zugriff auf einen bestimmten Bucket gewähren, um Bilder von Object Storage zu importieren.
Um ein Bild nach Object Storage zu exportieren, müssen Sie auch Writer Zugriff gewähren.
Bevor Sie den Befehl ausführen, müssen Sie die GUID der Instanz des Dienstes „ Object Storage “ kennen.
-
Verwenden Sie den Befehl
ibmcloud resource service-instance, um die GUID abzurufen. Sehen Sie sich das folgende Beispiel an:$ ibmcloud resource service-instance cos-fs-cloud-us-south Retrieving service instance cos-fs-cloud-us-south in all resource groups under account Test Account as test.user@ibm.com... OK Name: cos-fs-cloud-us-south ID: crn:v1:bluemix:public:cloud-object-storage:global:a/a1234567:0e4a33e6-973e-42b6-bea4-ce1b3aebe163:: GUID: 0e4a33e6-973e-42b6-bea4-ce1b3aebe163 Location: global Service Name: cloud-object-storage Service Plan Name: standard Resource Group Name: defaults State: active Type: service_instance Sub Type: Locked: false Created at: 2021-07-27T14:40:45Z Created by: IBMid-12345678 Updated at: 2021-07-27T14:40:47Z Last Operation: Status create succeeded Message Completed create instance operation -
Führen Sie den folgenden Befehl aus und ersetzen Sie „
$COS_INSTANCE_GUID“ durch den Wert „GUID“.ibmcloud iam authorization-policy-create is cloud-object-storage Reader --source-resource-type image --target-service-instance-id $COS_INSTANCE_GUIDEine erfolgreiche Antwort sieht wie im folgenden Beispiel aus:
$ ibmcloud iam authorization-policy-create is cloud-object-storage Reader --source-resource-type image --target-service-instance-id 0e4a33e6-973e-42b6-bea4-ce1b3aebe163 Creating authorization policy under account a1234567 as test.user@ibm.com... OK Authorization policy 0bbcb168-bf7b-4ebf-9684-769f1d7e80e7 was created. ID: 0bbcb168-bf7b-4ebf-9684-769f1d7e80e7 Source service name: is Source service instance: All instances Source resource type: image Target service name: cloud-object-storage Target service instance: 0e4a33e6-973e-42b6-bea4-ce1b3aebe163 Roles: Reader
Weitere Informationen zu allen für diesen Befehl verfügbaren Parametern finden Sie unter ibmcloud iam authorization-policy-create.
Zugriff über die API erteilen
Verwenden Sie die IAM-Richtlinienmanagement-API, um einen Quellenservice für den Zugriff auf einen Zielservice zu berechtigen. Das folgende API-Beispiel zeigt das Erstellen einer
Richtlinienmethode, wobei type=authorization angegeben wurde. Alle möglichen Attribute werden aufgelistet.
Die unterstützten Attribute zum Erstellen einer Berechtigungsrichtlinie hängen davon ab, was der einzelne Service unterstützt. Weitere Informationen zu unterstützten Attributen für jeden Service finden Sie in der Dokumentation zu den verwendeten Services.
Das Beispiel zeigt eine Berechtigungsrichtlinie für den Image Service for VPC für den Zugriff auf IBM Cloud Object Storage.
curl --location --request POST 'https://iam.cloud.ibm.com/v1/policies' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <iam token>' \
--data-raw '{
"type": "authorization",
"subjects": [
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "is"
},
{
"name": "resourceType",
"value": "image"
}
]
}
],
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Reader"
},
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Writer"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "cloud-object-storage"
}
]
}
]
}'
Zugang mit Terraform gewähren
Um eine Service-to-Service-Autorisierungsrichtlinie für IBM Cloud Object Storage zu erstellen, verwenden Sie das Ressourcenargument ibm_iam_authorization_policy in Ihrer main.tf-Datei.
resource "ibm_iam_authorization_policy" "policy" {
source_service_name = "is"
source_resource_type = "image"
target_service_name = "cloud-object-storage"
roles = ["Reader","Writer"]
description = "Authorization Policy"
}
Weitere Informationen zu den Argumenten und Attributen finden Sie in der Terraform-Dokumentation für Autorisierungsressourcen.
Nächste Schritte
Nachdem Sie diese Schritte durchgeführt haben, damit Image Service für VPC auf Bilder in Object Storage zugreifen oder Bilder nach Object Storage exportieren kann, fahren Sie mit einem der folgenden Themen fort: