UNPKG

@huaweicloudos/pulumi

Version:

A Pulumi package for creating and managing Huaweicloud cloud resources.

122 lines (121 loc) 4.6 kB
import * as pulumi from "@pulumi/pulumi"; /** * Manages an IAM user role assignment within HuaweiCloud IAM. * * > **NOTE:** 1. You *must* have admin privileges to use this resource. * <br/>2. When the resource is created, the permissions will take effect after 15 to 30 minutes. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as huaweicloud from "@pulumi/huaweicloud"; * import * as pulumi from "@huaweicloudos/pulumi"; * * const config = new pulumi.Config(); * const enterpriseProjectId = config.requireObject("enterpriseProjectId"); * const user1Password = config.requireObject("user1Password"); * const testRole = huaweicloud.Iam.getRole({ * displayName: "ECS FullAccess", * }); * const testUser = new huaweicloud.iam.User("testUser", { * description: "A user", * password: user1Password, * }); * const testUserRoleAssignment = new huaweicloud.iam.UserRoleAssignment("testUserRoleAssignment", { * userId: testUser.id, * roleId: testRole.then(testRole => testRole.id), * enterpriseProjectId: enterpriseProjectId, * }); * ``` * * ## Import * * The role assignments can be imported using the `user_id`, `role_id` and * * `enterprise_project_id`, e.g. bash * * ```sh * $ pulumi import huaweicloud:Iam/userRoleAssignment:UserRoleAssignment test <user_id>/<role_id>/<enterprise_project_id> * ``` */ export declare class UserRoleAssignment extends pulumi.CustomResource { /** * Get an existing UserRoleAssignment resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: UserRoleAssignmentState, opts?: pulumi.CustomResourceOptions): UserRoleAssignment; /** * Returns true if the given object is an instance of UserRoleAssignment. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is UserRoleAssignment; /** * Specifies the ID of the enterprise project * to assign the role in. Changing this parameter will create a new resource. */ readonly enterpriseProjectId: pulumi.Output<string>; /** * Specifies the role to assign. * Changing this parameter will create a new resource. */ readonly roleId: pulumi.Output<string>; /** * Specifies the the ID of user to assign the role to. * Changing this parameter will create a new resource. */ readonly userId: pulumi.Output<string>; /** * Create a UserRoleAssignment resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: UserRoleAssignmentArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering UserRoleAssignment resources. */ export interface UserRoleAssignmentState { /** * Specifies the ID of the enterprise project * to assign the role in. Changing this parameter will create a new resource. */ enterpriseProjectId?: pulumi.Input<string>; /** * Specifies the role to assign. * Changing this parameter will create a new resource. */ roleId?: pulumi.Input<string>; /** * Specifies the the ID of user to assign the role to. * Changing this parameter will create a new resource. */ userId?: pulumi.Input<string>; } /** * The set of arguments for constructing a UserRoleAssignment resource. */ export interface UserRoleAssignmentArgs { /** * Specifies the ID of the enterprise project * to assign the role in. Changing this parameter will create a new resource. */ enterpriseProjectId: pulumi.Input<string>; /** * Specifies the role to assign. * Changing this parameter will create a new resource. */ roleId: pulumi.Input<string>; /** * Specifies the the ID of user to assign the role to. * Changing this parameter will create a new resource. */ userId: pulumi.Input<string>; }