調用CreateRole介面建立RAM角色。

使用說明

關於RAM角色的介紹,請參見RAM角色概覽

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

請求參數

名稱 類型 是否必選 樣本值 描述
Action String CreateRole

要執行的操作。取值:CreateRole

RoleName String ECSAdmin

RAM角色名稱。

長度為1~64個字元,可包含英文字母、數字、半形句號(.)和短劃線(-)。

Description String ECS管理角色

RAM角色描述。

長度為1~1024個字元。

AssumeRolePolicyDocument String {"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"RAM":"acs:ram::123456789012****:root"}}],"Version":"1"}

信任策略。指定允許扮演該RAM角色的一個或多個主體,這個主體可以是阿里雲帳號、阿里雲服務或身份供應商。

说明 RAM使用者不能扮演可信實體為阿里雲服務的RAM角色。
MaxSessionDuration Long 3600

RAM角色最大會話時間。

取值範圍:3600秒~43200秒。預設值:3600秒。

取值為空白時將採用預設值。

AssumeRolePolicyDocument樣本
  • 以下策略表示:允許扮演該RAM角色的可信實體為阿里雲帳號(AccountID=123456789012****)下被授權的任何RAM使用者。
    
    {
    	"Statement": [{
    		"Action": "sts:AssumeRole",
    		"Effect": "Allow",
    		"Principal": {
    			"RAM": [
    				"acs:ram::123456789012****:root"
    			]
    		}
    	}],
    	"Version": "1"
    }
    
  • 以下策略表示:允許扮演該RAM角色的可信實體為阿里雲帳號(AccountID=123456789012****)下被授權的RAM使用者testuser
    说明 建立該角色前,請確保已建立RAM使用者testuser(其登入名稱稱為:testuser@123456789012****.onaliyun.com)。
    
    {
    	"Statement": [{
    		"Action": "sts:AssumeRole",
    		"Effect": "Allow",
    		"Principal": {
    			"RAM": [
    				"acs:ram::123456789012****:user/testuser"
    			]
    		}
    	}],
    	"Version": "1"
    }
    
  • 以下策略表示:允許扮演該RAM角色的可信實體為當前阿里雲帳號下的ECS服務。
    
    {
    	"Statement": [{
    		"Action": "sts:AssumeRole",
    		"Effect": "Allow",
    		"Principal": {
    			"Service": [
    				"ecs.aliyuncs.com"
    			]
    		}
    	}],
    	"Version": "1"
    }
    
  • 以下策略表示:允許扮演該RAM角色的可信實體為當前阿里雲帳號(AccountID=123456789012****)下的SAML身份供應商testprovider
    说明 建立此角色前,請確保已建立SAML身份供應商testprovider
    
    {
    	"Statement": [{
    		"Action": "sts:AssumeRole",
    		"Effect": "Allow",
    		"Principal": {
    			"Federated": [
    				"acs:ram::123456789012****:saml-provider/testprovider"
    			]
    		},
    		"Condition": {
    			"StringEquals": {
    				"saml:recipient": "https://signin.aliyun.com/saml-role/sso"
    			}
    		}
    	}],
    	"Version": "1"
    }
    
  • 以下策略表示:允許扮演該RAM角色的可信實體為當前阿里雲帳號(AccountID=123456789012****)下的OIDC身份供應商TestOIDCProvider
    说明 建立此角色前,請確保已建立OIDC身份供應商TestOIDCProvider
    
    {
    	"Statement": [{
    		"Action": "sts:AssumeRole",
    		"Effect": "Allow",
    		"Principal": {
    			"Federated": [
    				"acs:ram::123456789012****:oidc-provider/TestOIDCProvider"
    			]
    		},
    		"Condition": {
    			"StringEquals": {
    				"oidc:aud": [
    					"496271242565057****"
    				],
    				"oidc:iss": "https://dev-xxxxxx.okta.com",
    				"oidc:sub": "KryrkIdjylZb7agUgCEf****"
    			}
    		}
    	}],
    	"Version": "1"
    }
    

返回資料

名稱 類型 樣本值 描述
Role Object

RAM角色資訊。

AssumeRolePolicyDocument String { "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "RAM": "acs:ram::123456789012****:root" } } ], "Version": "1" }

RAM角色的信任策略。

Description String ECS管理角色

RAM角色描述。

MaxSessionDuration Long 3600

RAM角色最大會話時間。

RoleName String ECSAdmin

RAM角色名稱。

CreateDate String 2015-01-23T12:33:18Z

建立時間。

RoleId String 901234567890****

RAM角色ID。

Arn String acs:ram::123456789012****:role/ECSAdmin

RAM角色的資源描述符。

RequestId String 04F0F334-1335-436C-A1D7-6C044FE73368

請求ID。

樣本

請求樣本

https://ram.aliyuncs.com/?Action=CreateRole
&RoleName=ECSAdmin
&AssumeRolePolicyDocument={"Statement":[{"Action":"sts:AssumeRole","Effect":"Allow","Principal":{"RAM":"acs:ram::123456789012****:root"}}],"Version":"1"}
&Description=ECS管理角色
&<公用請求參數>

正常返回樣本

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<?xml version="1.0" encoding="UTF-8" ?>
<CreateRoleResponse>
	<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>
	<Role>
		<RoleId>901234567890****</RoleId>
		<RoleName>ECSAdmin</RoleName>
		<Arn>acs:ram::123456789012****:role/ECSAdmin</Arn>
		<Description>ECS管理角色</Description>
		<MaxSessionDuration>3600</MaxSessionDuration>
		<AssumeRolePolicyDocument>{ &quot;Statement&quot;: [ { &quot;Action&quot;: &quot;sts:AssumeRole&quot;, &quot;Effect&quot;: &quot;Allow&quot;, &quot;Principal&quot;: { &quot;RAM&quot;: &quot;acs:ram::123456789012****:root&quot; } } ], &quot;Version&quot;: &quot;1&quot; }</AssumeRolePolicyDocument>
		<CreateDate>2015-01-23T12:33:18Z</CreateDate>
	</Role>
</CreateRoleResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "04F0F334-1335-436C-A1D7-6C044FE73368",
  "Role" : {
    "RoleId" : "901234567890****",
    "RoleName" : "ECSAdmin",
    "Arn" : "acs:ram::123456789012****:role/ECSAdmin",
    "Description" : "ECS管理角色",
    "MaxSessionDuration" : 3600,
    "AssumeRolePolicyDocument" : "{ \"Statement\": [ { \"Action\": \"sts:AssumeRole\", \"Effect\": \"Allow\", \"Principal\": { \"RAM\": \"acs:ram::123456789012****:root\" } } ], \"Version\": \"1\" }",
    "CreateDate" : "2015-01-23T12:33:18Z"
  }
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。