---
title: password
url: /docs/esc/providers/rotators/password/
---
The `password` rotator enables you to rotate any user defined key by generating random passwords.

> **Note:** If you want to generate _memorable passphrases_ use the [passphrase rotator](/docs/esc/providers/rotators/passphrase/)

## Inputs

- **length**: The length of the generated passwords. (default `16`)
- **lower**: If `true` the generated passwords will contain lowercase characters. (default: `true`)
- **upper**: If `true` the generated passwords will contain uppercase characters. (default: `true`)
- **special**: If `true` the generated passwords will contain special  characters. (default: `true`)
- **minUpper**: The minimum number of uppercase characters that the generated passwords will contain. (default: `0`)
- **minLower**: The minimum number of lowercase characters that the generated passwords will contain. (default: `0`)
- **minSpecial**: The minimum number of special characters that the generated passwords will contain. (default: `0`)
- **overrideSpecial**: a string containing all the special characters that can be used to generate passwords. (default: `!@#$%&*()-_=+[]{}<>:?`)

## Example

The `password` rotator can be configured for any random user defined key.

```yaml
values:
  mypassword:
    fn::rotate::password:
      inputs:
        minLower: 2
        minUpper: 3
        minSpecial: 5
        overrideSpecial: "!@#$%&*()-_=+[]{}<>:"
        length: 15
```

The previous example will generate passwords like: `wn#ZQH}z$[H_&h*`

