更新时间:2024-11-14 GMT+08:00
分享

查询权限列表

功能介绍

云连接实例所属租户查询其可加载其他租户的网络实例权限。

分页查询使用的参数为marker、limit。marker和limit一起使用时才会生效,单独使用无效。

调用方法

请参见如何调用API

URI

GET https://cc.myhuaweicloud.com/v3/{domain_id}/ccaas/permissions

表1 路径参数

参数

是否必选

参数类型

描述

domain_id

String

账号ID。

表2 Query参数

参数

是否必选

参数类型

描述

limit

Integer

每页返回的个数。

取值范围:1~1000。

marker

String

翻页信息,从上次API调用返回的翻页数据中获取,可填写前一页marker或者后一页marker,填入前一页previous_marker就向前翻页,后一页next_marker就向后翻页。 翻页过程中,查询条件不能修改,包括过滤条件、排序条件、limit。

id

Array of arrays

根据ID查询,可查询多个ID。

name

Array of strings

根据名字查询,可查询多个名字。

description

Array of strings

根据描述查询,可查询多个描述。

cloud_connection_id

Array of arrays

根据云连接的ID过滤列表。

instance_id

Array of strings

根据实例ID过滤授权列表。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

request_id

String

请求ID。

page_info

PageInfo object

分页查询页的信息。

permissions

Array of Permission objects

权限实例列表。

表5 PageInfo

参数

参数类型

描述

next_marker

String

向后分页标识符。

previous_marker

String

向前分页标识符。

current_count

Integer

当前列表中资源数量。

表6 Permission

参数

参数类型

描述

id

String

实例ID。

name

String

实例名称。

description

String

实例描述。不支持 <>。

instance_id

String

网络实例(VPC,VGW)的ID。

project_id

String

实例所属项目ID。

region_id

String

RegionID。

created_at

String

实例创建时间。UTC时间格式,yyyy-MM-ddTHH:mm:ss。

domain_id

String

实例所属账号ID。

cloud_connection_id

String

云连接实例ID。

status

String

授权的状态。

instance_type

String

授权实例的类型。

instance_domain_id

String

被授权网络实例所属的账户ID。

请求示例

查询权限列表

GET https://{cc_endpoint}/v3/{domain_id}/ccaas/permissions

响应示例

状态码: 200

查询授权列表成功。

{
  "request_id" : "bce57c774ed47dd828963e5ec3a0b06d",
  "permissions" : [ {
    "id" : "XXX",
    "name" : "",
    "description" : "",
    "domain_id" : "XXX",
    "created_at" : "2023-09-20T08:03:51Z",
    "project_id" : "XXX",
    "region_id" : "region_id",
    "instance_type" : "vpc",
    "instance_id" : "XXX",
    "instance_domain_id" : "XXX",
    "cloud_connection_id" : "XXX",
    "status" : "authorized"
  } ],
  "page_info" : {
    "previous_marker" : "XXX",
    "current_count" : 1
  }
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.GlobalCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cc.v3.region.CcRegion;
import com.huaweicloud.sdk.cc.v3.*;
import com.huaweicloud.sdk.cc.v3.model.*;


public class ListPermissionsSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new GlobalCredentials()
                .withAk(ak)
                .withSk(sk);

        CcClient client = CcClient.newBuilder()
                .withCredential(auth)
                .withRegion(CcRegion.valueOf("<YOUR REGION>"))
                .build();
        ListPermissionsRequest request = new ListPermissionsRequest();
        try {
            ListPermissionsResponse response = client.listPermissions(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import GlobalCredentials
from huaweicloudsdkcc.v3.region.cc_region import CcRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcc.v3 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = GlobalCredentials(ak, sk)

    client = CcClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CcRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListPermissionsRequest()
        response = client.list_permissions(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/global"
    cc "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cc/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cc/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cc/v3/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := global.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := cc.NewCcClient(
        cc.CcClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListPermissionsRequest{}
	response, err := client.ListPermissions(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

查询授权列表成功。

错误码

请参见错误码

相关文档