@pulumi/vault
Version:
A Pulumi package for creating and managing HashiCorp Vault cloud resources.
177 lines (176 loc) • 5.08 kB
TypeScript
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>;
}