Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >So verwenden Sie die Instanz-RAM-Rolle über die API, nachdem Sie den RAM-Dienst aktiviert haben

So verwenden Sie die Instanz-RAM-Rolle über die API, nachdem Sie den RAM-Dienst aktiviert haben

坏嘻嘻
坏嘻嘻Original
2018-09-18 09:19:001908Durchsuche

Dieser Artikel stellt vor, wie Sie die Instanz-RAM-Rolle über die API nach der Aktivierung des RAM-Dienstes verwenden, und konzentriert sich auf die Schritte.

Verwendung der Instanz-RAM-Rolle über die API

Nutzungsbeschränkungen

Die folgenden Einschränkungen gelten für die Verwendung der Instanz-RAM-Rolle :

Nur ​​ECS-Instanzen des Netzwerktyps Privates Netzwerk (VPC) können die Instanz-RAM-Rolle verwenden.

Eine ECS-Instanz kann jeweils nur einer Instanz die RAM-Rolle zugewiesen werden.

Wenn Sie einer ECS-Instanz die Instanz-RAM-Rolle gewährt haben und auf die API des Cloud-Produkts in einer innerhalb der ECS-Instanz bereitgestellten Anwendung zugreifen möchten, müssen Sie das temporäre Autorisierungstoken der Instanz-RAM-Rolle erhalten über die Instanzmetadaten. Siehe 5. (Optional) Erhalten Sie ein temporäres Autorisierungstoken.

Wenn Sie das RAM-Benutzer-Unterkonto verwenden, um die Instanz-RAM-Rolle zu verwenden, müssen Sie den RAM-Benutzer autorisieren, die Instanz-RAM-Rolle über das Cloud-Konto 6 zu verwenden. (Optional).

Voraussetzungen

Sie haben den RAM-Dienst aktiviert. Informationen zur Aktivierungsmethode zum Aktivieren des RAM-Dienstes finden Sie im RAM-Dokument.

1. Erstellen Sie eine Instanz-RAM-Rolle

Rufen Sie die Schnittstelle CreateRole auf, um eine Instanz-RAM-Rolle zu erstellen.

Legen Sie den RoleName-Parameter fest, beispielsweise seinen Wert auf EcsRamRoleDocumentTesting.

Setzen Sie AssumeRolePolicyDocument gemäß der folgenden Richtlinie:

{
"Statement": [
{
"Action": "sts:AssumeRole",
"Effect": "Allow",
"Principal": {
"Service": [
"ecs.aliyuncs.com"
]
}
}
],
"Version": "1"
}

2. Autorisieren Sie die Instanz-RAM-Rolle

Rufen Sie die Schnittstelle CreatePolicy auf Erstellen Sie eine neue Autorisierungsrichtlinie.

Legen Sie den RoleName-Parameter fest, beispielsweise seinen Wert auf EcsRamRoleDocumentTestingPolicy.

Legen Sie PolicyDocument gemäß der folgenden Richtlinie fest:

{
"Statement": [
{
"Action": [
"oss:Get*",
"oss:List*"
],
"Effect": "Allow",
"Resource": "*"
}
],
"Version": "1"
}

Rufen Sie die Schnittstelle AttachPolicyToRole Autorisierungsrollenrichtlinie auf.

Setzen Sie den Parameter „PolicyType“ auf „Benutzerdefiniert“.

Legen Sie den PolicyName-Parameter fest, z. B. EcsRamRoleDocumentTestingPolicy.

Legen Sie den RoleName-Parameter fest, z. B. EcsRamRoleDocumentTesting.

3. Gewähren Sie der Instanz die RAM-Rolle

Rufen Sie die Schnittstelle AttachInstanceRamRole auf, um der Instanz die RAM-Rolle zuzuweisen.

Legen Sie die Parameter RegionId und InstanceIds fest, um eine ECS-Instanz anzugeben.

Legen Sie den RamRoleName-Parameter fest, z. B. EcsRamRoleDocumentTesting.

4. (Optional) Fordern Sie die Instanz-RAM-Rolle zurück

Rufen Sie die Schnittstelle DetachInstanceRamRole auf, um die Instanz-RAM-Rolle zurückzufordern.

Legen Sie die Parameter RegionId und InstanceIds fest, um eine ECS-Instanz anzugeben.

Legen Sie den RamRoleName-Parameter fest, z. B. EcsRamRoleDocumentTesting.

5. (Optional) Erhalten Sie ein temporäres Autorisierungstoken

Sie können ein temporäres Autorisierungstoken für die Instanz-RAM-Rolle erhalten Das Token kann die Berechtigungen und Ressourcen der Instanz-RAM-Rolle ausführen, und das temporäre Autorisierungstoken wird regelmäßig automatisch aktualisiert. Beispiel:

Das temporäre Autorisierungstoken der Instanz-RAM-Rolle namens EcsRamRoleDocumentTesting abrufen:

Linux-Instanz: Führen Sie den Befehl „curl“ http://100.100.100.200/latest/meta-data/Ram/ aus. security -credentials/EcsRamRoleDocumentTesting.

Windows-Instanzen: Informationen zu Instanzmetadaten finden Sie in der Dokumentation.

Besorgen Sie sich ein temporäres Autorisierungstoken. Das Rückgabebeispiel lautet wie folgt:

{
"AccessKeyId" : "XXXXXXXXX",
"AccessKeySecret" : "XXXXXXXXX",
"Expiration" : "2017-11-01T05:20:01Z",
"SecurityToken" : "XXXXXXXXX",
"LastUpdated" : "2017-10-31T23:20:01Z",
"Code" : "Success"
}

6 (Optional) Autorisieren Sie den RAM-Benutzer, die Instanz-RAM-Rolle zu verwenden

Beschreibung

Wenn Sie einem RAM-Benutzer die Verwendung einer Instanz-RAM-Rolle autorisieren, müssen Sie dem RAM-Benutzer PassRole-Berechtigungen für die Instanz-RAM-Rolle erteilen. Unter anderem bestimmt PassRole, ob der RAM-Benutzer die durch die Rollenrichtlinie gewährten Berechtigungen direkt ausführen kann.

Melden Sie sich bei der RAM-Konsole an und lesen Sie in der Dokumentation nach, um RAM-Benutzern die Autorisierung wie folgt zu autorisieren:

{
"Version": "2016-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs: [ECS RAM Action]",
"ecs: CreateInstance",
"ecs: AttachInstanceRamRole",
"ecs: DetachInstanceRAMRole"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "*"
}
]
}

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Instanz-RAM-Rolle über die API, nachdem Sie den RAM-Dienst aktiviert haben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn