UNPKG

@pulumi/pulumiservice

Version:

[![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com) [![NPM version](https://badge.fury.io/js/%40pulumi%2Fpulumiservice.svg)](https://www.npmjs.com/package/@pulumi/pulumiservice) [![Python version](https://badge.fury.io

114 lines 4.45 kB
import * as pulumi from "@pulumi/pulumi"; /** * Creates a new custom role for an organization. Custom roles define fine-grained permission sets that can be assigned to organization members and teams, enabling precise access control beyond the built-in admin and member roles. Optionally, an associated policy and role binding can be created alongside the role. Role definitions are subject to two limits: a permission descriptor group may contain at most 500 entries (each directly-specified entity counts as one entry), and the total serialized size of the role definition may not exceed 1 MB. Exceeding either limit returns a 400 error. If you need to grant access to more than 500 individually listed resources, use tag-based (ABAC) rules instead. */ export declare class Role extends pulumi.CustomResource { /** * Get an existing Role 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): Role; /** * Returns true if the given object is an instance of Role. 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 Role; /** * When the role was created. */ readonly created: pulumi.Output<string>; /** * The identifier for default roles. Empty for custom roles. */ readonly defaultIdentifier: pulumi.Output<string | undefined>; /** * A human-readable description of the permission descriptor. */ readonly description: pulumi.Output<string | undefined>; /** * The detailed permission descriptor tree. */ readonly details: pulumi.Output<any | undefined>; /** * Whether this role is the organization default. */ readonly isOrgDefault: pulumi.Output<boolean>; /** * When the role was last modified. */ readonly modified: pulumi.Output<string>; /** * The name of the permission descriptor. */ readonly name: pulumi.Output<string | undefined>; /** * The ID of the organization this role belongs to. */ readonly orgId: pulumi.Output<string>; /** * The resource type this permission descriptor applies to. */ readonly resourceType: pulumi.Output<string | undefined>; /** * The unique identifier for this role. */ readonly roleID: pulumi.Output<string>; /** * The UX purpose of this permission descriptor (e.g. role, policy, set). */ readonly uxPurpose: pulumi.Output<string | undefined>; /** * The version of this role. */ readonly version: pulumi.Output<number>; /** * Create a Role 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: RoleArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Role resource. */ export interface RoleArgs { /** * Also create an associated policy and role binding alongside the role */ createPolicyAndRole?: pulumi.Input<boolean | undefined>; /** * A human-readable description of the permission descriptor. */ description?: pulumi.Input<string | undefined>; /** * The detailed permission descriptor tree. */ details?: any | undefined; /** * The name of the permission descriptor. */ name?: pulumi.Input<string | undefined>; /** * The organization name */ orgName: pulumi.Input<string>; /** * The resource type this permission descriptor applies to. */ resourceType?: pulumi.Input<string | undefined>; /** * The role identifier */ roleID?: pulumi.Input<string | undefined>; /** * The UX purpose of this permission descriptor (e.g. role, policy, set). */ uxPurpose?: pulumi.Input<string | undefined>; } //# sourceMappingURL=role.d.ts.map