Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ishuar/terraform-sshkey-generator
This module generates the SSH key for any development used case.
https://github.com/ishuar/terraform-sshkey-generator
Last synced: 20 days ago
JSON representation
This module generates the SSH key for any development used case.
- Host: GitHub
- URL: https://github.com/ishuar/terraform-sshkey-generator
- Owner: ishuar
- License: apache-2.0
- Created: 2022-05-29T23:52:26.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-15T20:25:47.000Z (11 months ago)
- Last Synced: 2024-10-13T02:07:51.324Z (about 1 month ago)
- Language: HCL
- Homepage:
- Size: 16.6 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Requirements
| Name | Version |
|------|---------|
| [azurerm](#requirement\_azurerm) | ~> 3.50 |
| [local](#requirement\_local) | ~>2.4 |
| [tls](#requirement\_tls) | ~>3.4 |## Providers
| Name | Version |
|------|---------|
| [azurerm](#provider\_azurerm) | ~> 3.50 |
| [local](#provider\_local) | ~>2.4 |
| [tls](#provider\_tls) | ~>3.4 |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [azurerm_key_vault.password_key_vault](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/key_vault) | resource |
| [azurerm_key_vault_access_policy.user_access_policy](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/key_vault_access_policy) | resource |
| [azurerm_key_vault_secret.kv_secret](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/key_vault_secret) | resource |
| [azurerm_resource_group.ssh_key_kv_rg](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/resource_group) | resource |
| [local_sensitive_file.private_key](https://registry.terraform.io/providers/hashicorp/local/latest/docs/resources/sensitive_file) | resource |
| [tls_private_key.ssh](https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/private_key) | resource |
| [azurerm_client_config.current](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/data-sources/client_config) | data source |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [algorithm](#input\_algorithm) | (Required) Name of the algorithm to use when generating the private key. Currently-supported values are RSA, ECDSA and ED25519. | `string` | n/a | yes |
| [directory\_permission](#input\_directory\_permission) | (optional) Permissions to set for directories created (before umask), expressed as string in numeric notation. Default value is 0700 | `string` | `"700"` | no |
| [ecdsa\_curve](#input\_ecdsa\_curve) | (optional) When algorithm is ECDSA, the name of the elliptic curve to use | `string` | `"P224"` | no |
| [enable\_az\_key\_vault\_secret](#input\_enable\_az\_key\_vault\_secret) | (Optional) Whether to push generated ssh private key to azure keyVault as secret. | `bool` | `false` | no |
| [enabled\_for\_disk\_encryption](#input\_enabled\_for\_disk\_encryption) | (optional)Boolean flag to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys. | `bool` | `false` | no |
| [expiration\_date](#input\_expiration\_date) | (optional) Expiration UTC datetime (2024-01-31T00:00:00Z) | `string` | `"2024-01-31T00:00:00Z"` | no |
| [file\_permission](#input\_file\_permission) | (optional) Permissions to set for the output file (before umask), expressed as string in numeric notation. Default value is 0700 | `string` | `"700"` | no |
| [location](#input\_location) | (optional) The location of resource group in which Key vault and associated resources are created | `string` | `"westeurope"` | no |
| [private\_key\_filename](#input\_private\_key\_filename) | (optional) Filename for private key saved locally on machine with path | `string` | `"./private_ssh_key"` | no |
| [purge\_protection\_enabled](#input\_purge\_protection\_enabled) | (optional) Is Purge Protection enabled for this Key Vault? | `bool` | `false` | no |
| [resource\_group\_name](#input\_resource\_group\_name) | (optional) Resource group in which Key vault and respective resources would be created | `string` | `"kv-auto-ssh-ppk-key"` | no |
| [rsa\_bits](#input\_rsa\_bits) | (optional)When algorithm is RSA, the size of the generated RSA key, in bits | `number` | `4096` | no |
| [soft\_delete\_retention\_days](#input\_soft\_delete\_retention\_days) | (optional) he number of days that items should be retained for once soft-deleted. | `number` | `7` | no |
| [ssh\_key\_vault\_name](#input\_ssh\_key\_vault\_name) | (optional) Key Vault name where private key would be stored as password | `string` | `"kv-ssh-key-module"` | no |
| [ssh\_kv\_secret](#input\_ssh\_kv\_secret) | (optional) KV secret which contains the ssh ppk | `string` | `"secret-ssh-ppk-module"` | no |
| [tags](#input\_tags) | (optional) Tags atttached with the resources | `map(string)` | `{}` | no |## Outputs
| Name | Description |
|------|-------------|
| [public\_ssh\_key](#output\_public\_ssh\_key) | n/a |
| [public\_ssh\_key\_pem](#output\_public\_ssh\_key\_pem) | n/a |