RandomPassword

class RandomPassword : KotlinCustomResource

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
import * as random from "@pulumi/random";
const password = new random.RandomPassword("password", {
length: 16,
special: true,
overrideSpecial: "!#$%&*()-_=+[]{}<>:?",
});
const example = new aws.rds.Instance("example", {
instanceClass: aws.rds.InstanceType.T3_Micro,
allocatedStorage: 64,
engine: "mysql",
username: "someone",
password: password.result,
});
import pulumi
import pulumi_aws as aws
import pulumi_random as random
password = random.RandomPassword("password",
length=16,
special=True,
override_special="!#$%&*()-_=+[]{}<>:?")
example = aws.rds.Instance("example",
instance_class=aws.rds.InstanceType.T3_MICRO,
allocated_storage=64,
engine="mysql",
username="someone",
password=password.result)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
using Random = Pulumi.Random;
return await Deployment.RunAsync(() =>
{
var password = new Random.RandomPassword("password", new()
{
Length = 16,
Special = true,
OverrideSpecial = "!#$%&*()-_=+[]{}<>:?",
});
var example = new Aws.Rds.Instance("example", new()
{
InstanceClass = Aws.Rds.InstanceType.T3_Micro,
AllocatedStorage = 64,
Engine = "mysql",
Username = "someone",
Password = password.Result,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/rds"
"github.com/pulumi/pulumi-random/sdk/v4/go/random"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
password, err := random.NewRandomPassword(ctx, "password", &random.RandomPasswordArgs{
Length: pulumi.Int(16),
Special: pulumi.Bool(true),
OverrideSpecial: pulumi.String("!#$%&*()-_=+[]{}<>:?"),
})
if err != nil {
return err
}
_, err = rds.NewInstance(ctx, "example", &rds.InstanceArgs{
InstanceClass: pulumi.String(rds.InstanceType_T3_Micro),
AllocatedStorage: pulumi.Int(64),
Engine: pulumi.String("mysql"),
Username: pulumi.String("someone"),
Password: password.Result,
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.random.RandomPassword;
import com.pulumi.random.RandomPasswordArgs;
import com.pulumi.aws.rds.Instance;
import com.pulumi.aws.rds.InstanceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var password = new RandomPassword("password", RandomPasswordArgs.builder()
.length(16)
.special(true)
.overrideSpecial("!#$%&*()-_=+[]{}<>:?")
.build());
var example = new Instance("example", InstanceArgs.builder()
.instanceClass("db.t3.micro")
.allocatedStorage(64)
.engine("mysql")
.username("someone")
.password(password.result())
.build());
}
}
resources:
password:
type: random:RandomPassword
properties:
length: 16
special: true
overrideSpecial: '!#$%&*()-_=+[]{}<>:?'
example:
type: aws:rds:Instance
properties:
instanceClass: db.t3.micro
allocatedStorage: 64
engine: mysql
username: someone
password: ${password.result}

Import

You can import external passwords into your Pulumi programs as follows:

$ import random:index/randomPassword:RandomPassword newPassword supersecret
<break>```
This command will encode the `supersecret` token in Pulumi state and generate a code suggestion to
include a new RandomPassword resource in your Pulumi program. Include the suggested code and do a
`pulumi up`. Your secret password is now securely stored in Pulumi, and you can reference it in your
Pulumi program as `newPassword.result`.

Properties

Link copied to clipboard
val bcryptHash: Output<String>

A bcrypt hash of the generated random string. NOTE: If the generated random string is greater than 72 bytes in length, bcrypt_hash will contain a hash of the first 72 bytes.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val keepers: Output<Map<String, String>>?

Arbitrary map of values that, when changed, will trigger recreation of resource. See the main provider documentation for more information.

Link copied to clipboard
val length: Output<Int>

The length of the string desired. The minimum value for length is 1 and, length must also be >= (min_upper + min_lower + min_numeric + min_special).

Link copied to clipboard
val lower: Output<Boolean>

Include lowercase alphabet characters in the result. Default value is true.

Link copied to clipboard
val minLower: Output<Int>

Minimum number of lowercase alphabet characters in the result. Default value is 0.

Link copied to clipboard
val minNumeric: Output<Int>

Minimum number of numeric characters in the result. Default value is 0.

Link copied to clipboard
val minSpecial: Output<Int>

Minimum number of special characters in the result. Default value is 0.

Link copied to clipboard
val minUpper: Output<Int>

Minimum number of uppercase alphabet characters in the result. Default value is 0.

Link copied to clipboard
val number: Output<Boolean>

Include numeric characters in the result. Default value is true. If number, upper, lower, and special are all configured, at least one of them must be set to true. NOTE: This is deprecated, use numeric instead.

Link copied to clipboard
val numeric: Output<Boolean>

Include numeric characters in the result. Default value is true. If numeric, upper, lower, and special are all configured, at least one of them must be set to true.

Link copied to clipboard
val overrideSpecial: Output<String>?

Supply your own list of special characters to use for string generation. This overrides the default character list in the special argument. The special argument must still be set to true for any overwritten characters to be used in generation.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val result: Output<String>

The generated random string.

Link copied to clipboard
val special: Output<Boolean>

Include special characters in the result. These are !@#$%&*()-_=+[]{}<>:?. Default value is true.

Link copied to clipboard
val upper: Output<Boolean>

Include uppercase alphabet characters in the result. Default value is true.

Link copied to clipboard
val urn: Output<String>