@huaweicloudos/pulumi
Version:
A Pulumi package for creating and managing Huaweicloud cloud resources.
101 lines (100 loc) • 3.01 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
/**
* Use this data source to get details of the specified IAM **custom policy**.
*
* > **NOTE:** You *must* have IAM read privileges to use this data source.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as huaweicloud from "@pulumi/huaweicloud";
*
* const policy = pulumi.output(huaweicloud.Iam.getCustomRole({
* name: "custom_policy",
* }));
* ```
*/
export declare function getCustomRole(args?: GetCustomRoleArgs, opts?: pulumi.InvokeOptions): Promise<GetCustomRoleResult>;
/**
* A collection of arguments for invoking getCustomRole.
*/
export interface GetCustomRoleArgs {
/**
* Specifies the description of the custom policy.
*/
description?: string;
/**
* Specifies the domain the policy belongs to.
*/
domainId?: string;
/**
* Specifies the ID of the custom policy. It's required if `name` is not specified.
*/
id?: string;
/**
* Specifies the name of the custom policy. It's required if `id` is not specified.
*/
name?: string;
/**
* Specifies the number of citations for the custom policy.
*/
references?: number;
/**
* Specifies the display mode of the custom policy. Valid options are as follows:
* + **AX**: the global service project.
* + **XA**: region-specific projects.
*/
type?: string;
}
/**
* A collection of values returned by getCustomRole.
*/
export interface GetCustomRoleResult {
/**
* The catalog of the custom policy. The value is **CUSTOMED**.
*/
readonly catalog: string;
readonly description: string;
readonly domainId: string;
readonly id: string;
readonly name: string;
/**
* The content of the custom policy in JSON format.
*/
readonly policy: string;
readonly references: number;
readonly type: string;
}
export declare function getCustomRoleOutput(args?: GetCustomRoleOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetCustomRoleResult>;
/**
* A collection of arguments for invoking getCustomRole.
*/
export interface GetCustomRoleOutputArgs {
/**
* Specifies the description of the custom policy.
*/
description?: pulumi.Input<string>;
/**
* Specifies the domain the policy belongs to.
*/
domainId?: pulumi.Input<string>;
/**
* Specifies the ID of the custom policy. It's required if `name` is not specified.
*/
id?: pulumi.Input<string>;
/**
* Specifies the name of the custom policy. It's required if `id` is not specified.
*/
name?: pulumi.Input<string>;
/**
* Specifies the number of citations for the custom policy.
*/
references?: pulumi.Input<number>;
/**
* Specifies the display mode of the custom policy. Valid options are as follows:
* + **AX**: the global service project.
* + **XA**: region-specific projects.
*/
type?: pulumi.Input<string>;
}