import * as pulumi from "@pulumi/pulumi"; /** * This resource provides the Api Key resource in Oracle Cloud Infrastructure Identity service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/identity/latest/ApiKey * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/identity * * Uploads an API signing key for the specified user. * * Every user has permission to use this operation to upload a key for *their own user ID*. An * administrator in your organization does not need to write a policy to give users this ability. * To compare, administrators who have permission to the tenancy can use this operation to upload a * key for any user, including themselves. * * **Important:** Even though you have permission to upload an API key, you might not yet * have permission to do much else. If you try calling an operation unrelated to your own credential * management (e.g., `ListUsers`, `LaunchInstance`) and receive an "unauthorized" error, * check with an administrator to confirm which IAM Service group(s) you're in and what access * you have. Also confirm you're working in the correct compartment. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testApiKey = new oci.identity.ApiKey("test_api_key", { * keyValue: apiKeyKeyValue, * userId: testUser.id, * }); * ``` * * ## Import * * ApiKeys can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Identity/apiKey:ApiKey test_api_key "users/{userId}/apiKeys/{fingerprint}" * ``` */ export declare class ApiKey extends pulumi.CustomResource { /** * Get an existing ApiKey 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?: ApiKeyState, opts?: pulumi.CustomResourceOptions): ApiKey; /** * Returns true if the given object is an instance of ApiKey. 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 ApiKey; /** * The key's fingerprint (e.g., 12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef). */ readonly fingerprint: pulumi.Output; /** * The detailed status of INACTIVE lifecycleState. */ readonly inactiveStatus: pulumi.Output; /** * The public key. Must be an RSA key in PEM format. */ readonly keyValue: pulumi.Output; /** * The API key's current state. */ readonly state: pulumi.Output; /** * Date and time the `ApiKey` object was created, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` */ readonly timeCreated: pulumi.Output; /** * The OCID of the user. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly userId: pulumi.Output; /** * Create a ApiKey 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: ApiKeyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ApiKey resources. */ export interface ApiKeyState { /** * The key's fingerprint (e.g., 12:34:56:78:90:ab:cd:ef:12:34:56:78:90:ab:cd:ef). */ fingerprint?: pulumi.Input; /** * The detailed status of INACTIVE lifecycleState. */ inactiveStatus?: pulumi.Input; /** * The public key. Must be an RSA key in PEM format. */ keyValue?: pulumi.Input; /** * The API key's current state. */ state?: pulumi.Input; /** * Date and time the `ApiKey` object was created, in the format defined by RFC3339. Example: `2016-08-25T21:10:29.600Z` */ timeCreated?: pulumi.Input; /** * The OCID of the user. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ userId?: pulumi.Input; } /** * The set of arguments for constructing a ApiKey resource. */ export interface ApiKeyArgs { /** * The public key. Must be an RSA key in PEM format. */ keyValue: pulumi.Input; /** * The OCID of the user. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ userId: pulumi.Input; } //# sourceMappingURL=apiKey.d.ts.map