import * as pulumi from "@pulumi/pulumi"; /** * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vault from "@pulumi/vault"; * * const oci = new vault.OciAuthBackend("oci", { * path: "oci", * homeTenancyId: "ocid1.tenancy.oc1..aaaaaaaah7zkvaffv26pzyauoe2zbnionqvhvsexamplee557wakiofi4ysgqq", * }); * const example = new vault.OciAuthBackendRole("example", { * backend: oci.path, * name: "test-role", * ocidLists: [ * "ocid1.group.oc1..aaaaaaaabmyiinfq32y5aha3r2yo4exampleo4yg3fjk2sbne4567tropaa", * "ocid1.dynamicgroup.oc1..aaaaaaaabvfwct33xri5examplegov4zyjp3rd5d7sk9jjdggxijhco56hrq", * ], * tokenTtl: 60, * tokenMaxTtl: 120, * tokenPolicies: [ * "default", * "dev", * "prod", * ], * }); * ``` * * ## Import * * OCI auth backend roles can be imported using `auth/`, the `backend` path, `/role/`, and the `role` name e.g. * * ```sh * $ pulumi import vault:index/ociAuthBackendRole:OciAuthBackendRole example auth/oci/role/test-role * ``` */ export declare class OciAuthBackendRole extends pulumi.CustomResource { /** * Get an existing OciAuthBackendRole 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, state?: OciAuthBackendRoleState, opts?: pulumi.CustomResourceOptions): OciAuthBackendRole; /** * Returns true if the given object is an instance of OciAuthBackendRole. 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 OciAuthBackendRole; /** * Unique name of the auth backend to configure. */ readonly backend: pulumi.Output; /** * The name of the role. */ readonly name: pulumi.Output; /** * The namespace to provision the resource in. * The value should not contain leading or trailing forward slashes. * The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace). * *Available only for Vault Enterprise*. */ readonly namespace: pulumi.Output; /** * The list of Group or Dynamic Group OCIDs that can take this role. */ readonly ocidLists: pulumi.Output; /** * Specifies the blocks of IP addresses which are allowed to use the generated token */ readonly tokenBoundCidrs: pulumi.Output; /** * Generated Token's Explicit Maximum TTL in seconds */ readonly tokenExplicitMaxTtl: pulumi.Output; /** * The maximum lifetime of the generated token */ readonly tokenMaxTtl: pulumi.Output; /** * If true, the 'default' policy will not automatically be added to generated tokens */ readonly tokenNoDefaultPolicy: pulumi.Output; /** * The maximum number of times a token may be used, a value of zero means unlimited */ readonly tokenNumUses: pulumi.Output; /** * Generated Token's Period */ readonly tokenPeriod: pulumi.Output; /** * Generated Token's Policies */ readonly tokenPolicies: pulumi.Output; /** * The initial ttl of the token to generate in seconds */ readonly tokenTtl: pulumi.Output; /** * The type of token to generate, service or batch */ readonly tokenType: pulumi.Output; /** * Create a OciAuthBackendRole 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?: OciAuthBackendRoleArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering OciAuthBackendRole resources. */ export interface OciAuthBackendRoleState { /** * Unique name of the auth backend to configure. */ backend?: pulumi.Input; /** * The name of the role. */ name?: pulumi.Input; /** * The namespace to provision the resource in. * The value should not contain leading or trailing forward slashes. * The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace). * *Available only for Vault Enterprise*. */ namespace?: pulumi.Input; /** * The list of Group or Dynamic Group OCIDs that can take this role. */ ocidLists?: pulumi.Input[]>; /** * Specifies the blocks of IP addresses which are allowed to use the generated token */ tokenBoundCidrs?: pulumi.Input[]>; /** * Generated Token's Explicit Maximum TTL in seconds */ tokenExplicitMaxTtl?: pulumi.Input; /** * The maximum lifetime of the generated token */ tokenMaxTtl?: pulumi.Input; /** * If true, the 'default' policy will not automatically be added to generated tokens */ tokenNoDefaultPolicy?: pulumi.Input; /** * The maximum number of times a token may be used, a value of zero means unlimited */ tokenNumUses?: pulumi.Input; /** * Generated Token's Period */ tokenPeriod?: pulumi.Input; /** * Generated Token's Policies */ tokenPolicies?: pulumi.Input[]>; /** * The initial ttl of the token to generate in seconds */ tokenTtl?: pulumi.Input; /** * The type of token to generate, service or batch */ tokenType?: pulumi.Input; } /** * The set of arguments for constructing a OciAuthBackendRole resource. */ export interface OciAuthBackendRoleArgs { /** * Unique name of the auth backend to configure. */ backend?: pulumi.Input; /** * The name of the role. */ name?: pulumi.Input; /** * The namespace to provision the resource in. * The value should not contain leading or trailing forward slashes. * The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault#namespace). * *Available only for Vault Enterprise*. */ namespace?: pulumi.Input; /** * The list of Group or Dynamic Group OCIDs that can take this role. */ ocidLists?: pulumi.Input[]>; /** * Specifies the blocks of IP addresses which are allowed to use the generated token */ tokenBoundCidrs?: pulumi.Input[]>; /** * Generated Token's Explicit Maximum TTL in seconds */ tokenExplicitMaxTtl?: pulumi.Input; /** * The maximum lifetime of the generated token */ tokenMaxTtl?: pulumi.Input; /** * If true, the 'default' policy will not automatically be added to generated tokens */ tokenNoDefaultPolicy?: pulumi.Input; /** * The maximum number of times a token may be used, a value of zero means unlimited */ tokenNumUses?: pulumi.Input; /** * Generated Token's Period */ tokenPeriod?: pulumi.Input; /** * Generated Token's Policies */ tokenPolicies?: pulumi.Input[]>; /** * The initial ttl of the token to generate in seconds */ tokenTtl?: pulumi.Input; /** * The type of token to generate, service or batch */ tokenType?: pulumi.Input; }