import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * Creates and manages an Aiven for PostgreSQLĀ® service user. The built-in admin user belongs to the service itself. Write-only password management is not supported. If this resource is missing (for example, after a service power off), it's removed from the state and a new create plan is generated. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aiven from "@pulumi/aiven"; * * const example = new aiven.PgUser("example", { * project: "my-project", * serviceName: "my-pg", * username: "testuser", * passwordWo: "password123", * passwordWoVersion: 1, * pgAllowReplication: true, * }); * ``` * * ## Import * * ```sh * $ pulumi import aiven:index/pgUser:PgUser example PROJECT/SERVICE_NAME/USERNAME * ``` */ export declare class PgUser extends pulumi.CustomResource { /** * Get an existing PgUser 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?: PgUserState, opts?: pulumi.CustomResourceOptions): PgUser; /** * Returns true if the given object is an instance of PgUser. 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 PgUser; /** * Access certificate for TLS client authentication. */ readonly accessCert: pulumi.Output; /** * Access key for TLS client authentication. */ readonly accessKey: pulumi.Output; /** * The password of the service user (auto-generated if not provided). The field conflicts with `passwordWo`. Length must be between `8` and `256`. */ readonly password: pulumi.Output; /** * The password hashing algorithm used for this PostgreSQL user, derived from the stored password hash. 'unknown' is reported when the hash is missing or uses an unrecognised format. The possible values are `md5`, `scram-sha-256` and `unknown`. */ readonly passwordEncryptionType: pulumi.Output; /** * **NOTE:** This field is write-only and its value will not be updated in state as part of read operations. * The password of the service user (write-only, not stored in state). The field is required with `passwordWoVersion`. The field conflicts with `password`. Length must be between `8` and `256`. */ readonly passwordWo: pulumi.Output; /** * Version number for `passwordWo`. Increment this to rotate the password. The field is required with `passwordWo`. Minimum value: `1`. */ readonly passwordWoVersion: pulumi.Output; /** * Allows replication. For the default avnadmin user this attribute is required and is always `true`. */ readonly pgAllowReplication: pulumi.Output; /** * Project name. Changing this property forces recreation of the resource. */ readonly project: pulumi.Output; /** * The name of the service. Changing this property forces recreation of the resource. */ readonly serviceName: pulumi.Output; readonly timeouts: pulumi.Output; /** * The service user account type, either primary or regular. */ readonly type: pulumi.Output; /** * The name of the service user for this service. Maximum length: `64`. Changing this property forces recreation of the resource. */ readonly username: pulumi.Output; /** * Create a PgUser 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: PgUserArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering PgUser resources. */ export interface PgUserState { /** * Access certificate for TLS client authentication. */ accessCert?: pulumi.Input; /** * Access key for TLS client authentication. */ accessKey?: pulumi.Input; /** * The password of the service user (auto-generated if not provided). The field conflicts with `passwordWo`. Length must be between `8` and `256`. */ password?: pulumi.Input; /** * The password hashing algorithm used for this PostgreSQL user, derived from the stored password hash. 'unknown' is reported when the hash is missing or uses an unrecognised format. The possible values are `md5`, `scram-sha-256` and `unknown`. */ passwordEncryptionType?: pulumi.Input; /** * **NOTE:** This field is write-only and its value will not be updated in state as part of read operations. * The password of the service user (write-only, not stored in state). The field is required with `passwordWoVersion`. The field conflicts with `password`. Length must be between `8` and `256`. */ passwordWo?: pulumi.Input; /** * Version number for `passwordWo`. Increment this to rotate the password. The field is required with `passwordWo`. Minimum value: `1`. */ passwordWoVersion?: pulumi.Input; /** * Allows replication. For the default avnadmin user this attribute is required and is always `true`. */ pgAllowReplication?: pulumi.Input; /** * Project name. Changing this property forces recreation of the resource. */ project?: pulumi.Input; /** * The name of the service. Changing this property forces recreation of the resource. */ serviceName?: pulumi.Input; timeouts?: pulumi.Input; /** * The service user account type, either primary or regular. */ type?: pulumi.Input; /** * The name of the service user for this service. Maximum length: `64`. Changing this property forces recreation of the resource. */ username?: pulumi.Input; } /** * The set of arguments for constructing a PgUser resource. */ export interface PgUserArgs { /** * The password of the service user (auto-generated if not provided). The field conflicts with `passwordWo`. Length must be between `8` and `256`. */ password?: pulumi.Input; /** * **NOTE:** This field is write-only and its value will not be updated in state as part of read operations. * The password of the service user (write-only, not stored in state). The field is required with `passwordWoVersion`. The field conflicts with `password`. Length must be between `8` and `256`. */ passwordWo?: pulumi.Input; /** * Version number for `passwordWo`. Increment this to rotate the password. The field is required with `passwordWo`. Minimum value: `1`. */ passwordWoVersion?: pulumi.Input; /** * Allows replication. For the default avnadmin user this attribute is required and is always `true`. */ pgAllowReplication?: pulumi.Input; /** * Project name. Changing this property forces recreation of the resource. */ project: pulumi.Input; /** * The name of the service. Changing this property forces recreation of the resource. */ serviceName: pulumi.Input; timeouts?: pulumi.Input; /** * The name of the service user for this service. Maximum length: `64`. Changing this property forces recreation of the resource. */ username: pulumi.Input; } //# sourceMappingURL=pgUser.d.ts.map