UNPKG

@pulumi/vault

Version:

A Pulumi package for creating and managing HashiCorp Vault cloud resources.

177 lines (176 loc) 5.08 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vault from "@pulumi/vault"; * * const entity = vault.identity.getEntity({ * entityName: "entity_12345", * }); * ``` * * ## Required Vault Capabilities * * Use of this resource requires the `update` capability on `/identity/lookup/entity`. */ export declare function getEntity(args?: GetEntityArgs, opts?: pulumi.InvokeOptions): Promise<GetEntityResult>; /** * A collection of arguments for invoking getEntity. */ export interface GetEntityArgs { /** * ID of the alias. */ aliasId?: string; /** * Accessor of the mount to which the alias belongs to. * This should be supplied in conjunction with `aliasName`. * * The lookup criteria can be `entityName`, `entityId`, `aliasId`, or a combination of * `aliasName` and `aliasMountAccessor`. */ aliasMountAccessor?: string; /** * Name of the alias. This should be supplied in conjunction with * `aliasMountAccessor`. */ aliasName?: string; /** * ID of the entity. */ entityId?: string; /** * Name of the entity. */ entityName?: string; /** * The namespace of the target resource. * 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/index.html#namespace). * *Available only for Vault Enterprise*. */ namespace?: string; } /** * A collection of values returned by getEntity. */ export interface GetEntityResult { readonly aliasId: string; readonly aliasMountAccessor: string; readonly aliasName: string; /** * A list of entity alias. Structure is documented below. */ readonly aliases: outputs.identity.GetEntityAlias[]; /** * Creation time of the Alias */ readonly creationTime: string; /** * A string containing the full data payload retrieved from * Vault, serialized in JSON format. */ readonly dataJson: string; /** * List of Group IDs of which the entity is directly a member of */ readonly directGroupIds: string[]; /** * Whether the entity is disabled */ readonly disabled: boolean; readonly entityId: string; readonly entityName: string; /** * List of all Group IDs of which the entity is a member of */ readonly groupIds: string[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * List of all Group IDs of which the entity is a member of transitively */ readonly inheritedGroupIds: string[]; /** * Last update time of the alias */ readonly lastUpdateTime: string; /** * Other entity IDs which is merged with this entity */ readonly mergedEntityIds: string[]; /** * Arbitrary metadata */ readonly metadata: { [key: string]: string; }; readonly namespace?: string; /** * Namespace of which the entity is part of */ readonly namespaceId: string; /** * List of policies attached to the entity */ readonly policies: string[]; } /** * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as vault from "@pulumi/vault"; * * const entity = vault.identity.getEntity({ * entityName: "entity_12345", * }); * ``` * * ## Required Vault Capabilities * * Use of this resource requires the `update` capability on `/identity/lookup/entity`. */ export declare function getEntityOutput(args?: GetEntityOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetEntityResult>; /** * A collection of arguments for invoking getEntity. */ export interface GetEntityOutputArgs { /** * ID of the alias. */ aliasId?: pulumi.Input<string>; /** * Accessor of the mount to which the alias belongs to. * This should be supplied in conjunction with `aliasName`. * * The lookup criteria can be `entityName`, `entityId`, `aliasId`, or a combination of * `aliasName` and `aliasMountAccessor`. */ aliasMountAccessor?: pulumi.Input<string>; /** * Name of the alias. This should be supplied in conjunction with * `aliasMountAccessor`. */ aliasName?: pulumi.Input<string>; /** * ID of the entity. */ entityId?: pulumi.Input<string>; /** * Name of the entity. */ entityName?: pulumi.Input<string>; /** * The namespace of the target resource. * 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/index.html#namespace). * *Available only for Vault Enterprise*. */ namespace?: pulumi.Input<string>; }