Bu konuda, Cloud Control API işlemlerini çağırmak üzere RAM kullanıcıları için erişim yönteminin nasıl yapılandırılacağı ve bu kullanıcılara nasıl izin verileceği açıklanmaktadır. RAM kullanıcılarının doğru yönetimi güvenlik risklerini azaltır ve birden çok RAM kullanıcısı arasında iş birliğini destekler.
RAM kullanıcı , Resource Access Management (RAM) içinde bir kimlik türüdür. Alibaba Cloud hesabınız için RAM kullanıcıları oluşturabilir ve kaynaklarınıza erişimi kontrol etmek amacıyla bu kullanıcılara belirli izinler atayabilirsiniz. Kuruluşunuzda birden fazla kişinin iş birliği yapması gerektiğinde her biri için ayrı bir RAM kullanıcısı oluşturun ve en az yetki ilkesine dayalı olarak izinler verin. Bu uygulama Alibaba Cloud hesabınızın parolasının veya AccessKey bilgilerinin paylaşılmasını önler ve güvenlik risklerini önemli ölçüde azaltır.
Erişim yöntemi belirtin
Cloud Control API işlemlerini konsol üzerinden veya OpenAPI aracılığıyla çağırabilirsiniz. Bir RAM kullanıcısına bu işlemi çağırma yetkisi verirken bir erişim yöntemi seçmeniz gerekir. RAM kullanıcısı erişim yöntemi ile CloudControl API çağrı yöntemi arasındaki eşleme aşağıdaki gibidir:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RAM kullanıcısı bir kişiyi temsil ediyorsa ilgili RAM kullanıcısı için Konsol Erişimi seçmenizi öneririz. RAM kullanıcısı bir uygulamayı temsil ediyorsa OpenAPI Erişimi seçmenizi öneririz. Bu sayede RAM kullanıcısı Alibaba Cloud'a erişmek için bir AccessKey çifti kullanabilir.
Bir RAM kullanıcısı oluştururken erişim yöntemini seçebilir veya mevcut bir RAM kullanıcısının erişim yöntemini değiştirebilirsiniz. Daha fazla bilgi için bkz. RAM kullanıcısı oluşturma.
Cloud Control API işlemlerini konsolda çağırma
Bir VPC'nin ayrıntılarını görüntülemek için VPC konsoluna giriş yapabilirsiniz.
Sol gezinme bölmesinde VPC seçeneğine tıklayın. VPC listesinde hedef örneğin ID değerine tıklayarak ayrıntılar sayfasını açın. Temel Bilgiler sekmesinde VPC ID, IPv4 ve IPv6 CIDR blokları, etiketler, bölge, sahip, varsayılan DNS sunucusu, yönlendirici ID ve IPv4 genel erişim modu gibi yapılandırma ayrıntılarını görüntüleyebilirsiniz.
Cloud Control API işlemlerini uygulama kullanarak çağırma
Aşağıdaki kod Java'da geliştirilen kodların VPC kaynaklarıyla ilgili ayrıntıları nasıl elde ettiğini göstermektedir.
package com.aliyun.sample;
import com.aliyun.tea.*;
/*<dependency>
<groupId>com.aliyun</groupId>
<artifactId>cloudcontrol20220830</artifactId>
<version>1.1.1</version>
</dependency>*/
public class Sample {
public static com.aliyun.cloudcontrol20220830.Client createClient() throws Exception {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// System.getenv() retrieves the AccessKey from environment variables.
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
config.endpoint = "cloudcontrol.aliyuncs.com";
return new com.aliyun.cloudcontrol20220830.Client(config);
}
public static void main(String[] args_) throws Exception {
com.aliyun.cloudcontrol20220830.Client client = Sample.createClient();
String requestPath = "/api/v1/providers/Aliyun/products/VPC/resources/VPC/vpc-m5e6l4XXXXXXXX";
com.aliyun.cloudcontrol20220830.models.GetResourcesRequest getResourcesRequest = new com.aliyun.cloudcontrol20220830.models.GetResourcesRequest()
.setRegionId("cn-qingdao");
com.aliyun.teautil.models.RuntimeOptions runtime = new com.aliyun.teautil.models.RuntimeOptions();
java.util.Map<String, String> headers = new java.util.HashMap<>();
try {
GetResourcesResponse getResourcesResponse = client.getResourcesWithOptions(requestPath, getResourcesRequest, headers, runtime);
System.out.println(new Gson().toJson(getResourcesResponse.getBody()));
} catch (TeaException error) {
// Error message
System.out.println(error.getMessage());
// Troubleshooting URL
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
} catch (Exception _error) {
TeaException error = new TeaException(_error.getMessage(), _error);
// Error message
System.out.println(error.getMessage());
// Troubleshooting URL
System.out.println(error.getData().get("Recommend"));
com.aliyun.teautil.Common.assertAsString(error.message);
}
}
}
Beklenen çıktı:
{
"resource": {
"resourceId": "vpc-m5e6l4XXXXXXXX",
"resourceAttributes": {
"IsDefault": false,
"Status": "Available",
"Description": "",
"ResourceGroupId": "rg-acfmyXXXXXXXX",
"SecondaryCidrBlocks": [],
"VSwitchIds": [
"vsw-m5emwh9XXXXXXXX",
"vsw-m5e7uotXXXXXXXX"
],
"CreateTime": "2025-03-26T07:27:25Z",
"CidrBlock": "1XX.XXX.X.X/XX",
"RouterId": "vrt-m5e65XXXXXXXX",
"UserCidrs": [],
"VpcId": "vpc-m5e6lXXXXXXXX",
"VpcName": "caf-qingdao-vpc",
"RegionId": "cn-qingdao",
"Ipv6CidrBlock": "",
"Ipv6CidrBlocks": [
{
"Ipv6CidrBlock": ""
}
],
"Tags": [
{
"TagKey": "acs:XXXXXXXX",
"TagValue": "sub:XXXXXXXX"
}
]
}
},
"requestId": "DDEF766D-C25E-51A8-9DF7-1AAF437B8260"
}
İzinleri verme
CloudControl API işlemlerini bir RAM kullanıcısı aracılığıyla çağırırken iş gereksinimlerinize göre RAM kullanıcısına izin vermelisiniz. İlkeler sistem ilkeleri ve özel ilkeler olarak ayrılır.
Bir RAM kullanıcısına izin verirken en az yetki ilkesini uygulayın.
Aşağıdaki tabloda sistem ilkeleri açıklanmıştır.
İlke | Açıklama | Senaryo |
Cloud Control API yönetme izni. |
| |
Cloud Control API salt okunur erişim izni. |
|
Sistem ilkeleri gereksinimlerinizi karşılamıyorsa özel ilkeler oluşturabilirsiniz. Daha fazla bilgi için bkz. Özel ilkeler.