Files
threshold/website/content/docs/commands/credential-libraries/create.mdx
T
ad5ad69d54 [Assembly] Boundary Commands (CLI) docs (#3411)
* Add 'Commands (CLI)' docs

* Update index.mdx

Added Environment variables section

* Add 'connect' sub-folder structure

* Adding listen address and port environment variables

* add connect to the docs navigation

* docs: Add Florin's update to index

* docs: Fix links and typo

* Add front-matter to resolve the PR check issue

* Update postgres.mdx

Boundary helper for POSTGRES

* Completed 'boundary accounts' command docs

* Draft connection option documentatino for kube, http, and rdp (#3455)

* Style updates for consistency

* Clean up using partials

* Add 'ssh' doc & updated style for consistency

* Fix paste error

* Fix the format issue on 'connect ssh' doc

* Add 'auth-methods' command doc (#3520)

* Add the docs for 'logout', 'server', and 'dev' commands (#3524)

* Add the docs for 'logout', 'server', and 'dev' commands

* Update the front matter

* Add auth-tokens and authenticate command docs (#3575)

* Add config command docs (#3576)

* updates to the ssh helper command docs (#3523)

* updates to the ssh helper command docs

* docs: Fix code block

* docs: Add minor copy edits

---------

Co-authored-by: Dan Heath <76443935+Dan-Heath@users.noreply.github.com>

* docs: Add worker commands

* docs: Update workers subcommands (#3598)

* docs: Update worker subcommands

* docs: Update certificate-authority subcommand

* doc: Fix syntax for code refererences

* docs: Add `users` commands (#3599)

* docs: Add `users` commands

* docs: Add more subcommands

* docs: Add `target` commands (#3608)

* Add command docs for 'credential-libraries' (#3610)

* Add 'credential-stores' command docs (#3611)

* Add 'credential-stores' command docs

* Add the output message

* Fix a typo

* Fix a typo

* Update the dummy token value

* docs: Add `storage-bucket` commands - update (#3615)

* docs: Add `sessions` commands (#3616)

* docs: Add `session-recordings` commands (#3617)

* Add 'credentials' command docs (#3619)

* Add 'credentials' command docs

* Fix typos

* docs: Add `scopes` commands (#3620)

* docs: Add `scopes` commands

* docs: Fix typos

* docs: Add `roles` commands (#3621)

* docs: Add `roles` commands

* docs: Add remaining subcommands

* Add 'database' command docs (#3628)

* Add 'database' command docs

* Update the format inconsistency

* docs: Add `managed-groups` commands (#3626)

* docs: Add `managed-groups` commands

* docs: Clarify description

* docs: Add `hosts` commands (#3629)

* docs: Add `host-sets` commands (#3630)

* docs: Add `host-sets` commands

* docs: Copy edits

* docs: Add `host-catalogs` commands (#3632)

* Add 'boundary groups' command docs (#3636)

---------

Co-authored-by: kevin-loehfelm <37027455+kevin-loehfelm@users.noreply.github.com>
Co-authored-by: kevin-loehfelm <kevin.loehfelm@hashicorp.com>
Co-authored-by: Dan Heath <76443935+Dan-Heath@users.noreply.github.com>
Co-authored-by: Florin Cătălin Țiucra-Popa <106736683+FlorinTP@users.noreply.github.com>
Co-authored-by: Adam Bouhmad <adbouhmad@gmail.com>
2023-09-12 14:37:31 -04:00

192 lines
6.6 KiB
Plaintext

---
layout: docs
page_title: credential-libraries create - Command
description: |-
The "credential-libraries create" command lets you create Boundary credential library resources.
---
# credential-libraries create
Command: `boundary credential-libraries create`
The `credential-libraries create` command lets you create a credential library resource in Boundary.
## Examples
The following example creates a credential library for database credentials where Vault's database secrets engine provides dynamic credentials:
```shell-session
$ boundary credential-libraries create vault-generic \
-credential-store-id csvlt_5fvkRjCjou \
-vault-path "database/creds/dba" \
-name "northwind dba"
```
**Example output:**
<CodeBlockConfig hideClipboard>
```plaintext
Credential Library information:
Created Time: Wed, 28 Sep 2022 08:50:32 MDT
Credential Store ID: csvlt_Xqa6V6QwfM
ID: clvlt_Ex17uiP7FO
Name: northwind dba
Type: vault
Updated Time: Wed, 28 Sep 2022 08:50:32 MDT
Version: 1
Scope:
ID: p_EZaXO0OZPX
Name: db-project
Parent Scope ID: o_R1QFYcO743
Type: project
Authorized Actions:
no-op
read
update
delete
Attributes:
HTTP Method: GET
Path: database/creds/dba
```
</CodeBlockConfig>
## Usage
<CodeBlockConfig hideClipboard>
```shell-session
$ boundary credential-libraries create [type] [sub command] [options] [args]
```
</CodeBlockConfig>
### Command options
- `-credential-store-id` `(string: "")` - The credential store resource to use
for the operation. You can also specify the credential store using the
**BOUNDARY_CREDENTIAL_STORE_ID** environment variable.
- `-description` `(string: "")` - A description of the credential library.
- `-name` `(string: "")` - The name of the credential library.
### Usages by type
The available types are `vault-generic` and `vault-ssh-certificate`.
<Note>
A credential library type, `vault` is deprecated, so use `vault-generic` type instead.
</Note>
<Tabs>
<Tab heading="Vault">
The `credential-libraries create vault-generic` command lets you create a generic Vault credential library.
#### Example
The following example creates a generic Vault credential library using a credential store with the ID `csvlt_1234567890`:
```shell-session
$ boundary credential-libraries create vault-generic \
-credential-store-id csvlt_1234567890 \
-vault-path "database/creds/dba"
```
#### Usage
<CodeBlockConfig hideClipboard>
```shell-session
$ boundary credential-libraries create vault-generic [options] [args]
```
</CodeBlockConfig>
#### Vault credential library options
The following are specific Vault credential library options in addition to the command options:
- `-credential-mapping-override` - An override for credential mapping.
- `-credential-type` `(string: "")` - The type of credential this library issues.
The default value is `Unspecified`.
- `-vault-http-method` `(string: "")` - The HTTP method the library should use when it communicates with Vault.
- `-vault-http-request-body` `(string: "")` - The HTTP request body the credential library uses to communicate with Vault.
This value can be the HTTP request body value itself, it can refer to a file on disk (`file://`) from which the value is read, or it can refer to an environment variable (`env://`) from which the value is read.
- `-vault-path` `(string: "")` - The path in Vault to request credentials from.
</Tab>
<Tab heading="Vault SSH certificate">
The `credential-libraries create vault-ssh-certificate` command lets you create a Vault SSH certificate credential library.
#### Example
The following example creates a Vault SSH certificate credential library with the ID `csvlt_1234567890`:
```shell-session
$ boundary credential-libraries create vault-ssh-certificate \
-credential-store-id csvlt_1234567890 \
-vault-path "/ssh/sign/role" \
-username user
```
#### Usage
<CodeBlockConfig hideClipboard>
```shell-session
$ boundary credential-libraries create vault-ssh-certificate [options] [args]
```
</CodeBlockConfig>
#### Vault SSH certificate credential library options
The following are options are specific to the Vault SSH certificate credential library, in addition to the command options:
- `-critical-option` - A key=value pair to add to the request's
critical-options map.
It can also be a key value only which sets a JSON null as the value.
If you provide a value, Boundary infers the type automatically.
You can use `-string-critical-option`, `-bool-critical-option`, or `-num-critical-option` to override the type.
You can specify values for this option multiple times.
This option supports sourcing values from files using `file://` and environment variables using `env://`.
- `-critical-options` `(string: "")` - A JSON map value to use as the entirety of the request's critical-options map.
Usually this value is sourced from a file using the `file://` syntax.
This value is exclusive with the other critical-option flags.
- `-extension` - A key=value pair to add to the request's extensions map.
It can also be a key value only which will set a JSON null as the value.
If you provide a value, Boundary automatically infers the type.
You can use `-string-extension`, `-bool-extension`, or `-num-extension` to override the type.
You can specify values for this option multiple times.
This option supports sourcing values from files using `file://` and environment variables using `env://`.
- `-extensions` `(string: "")` - A JSON map value to use as the entirety of
the request's extensions map.
Usually this value is sourced from a file using the `file://` syntax.
This option is exclusive with the other extension flags.
- `-key-bits` `(string: "")` - The number of bits to use when the SSH private key is generated.
The value depends on the `key_type`.
If you use a `ed25519` key, you should not set a value or set the value to `0`.
If you use a `ecdsa` key, you should set the value to `256`, `384`, or `521`.
If you use an `rsa` key, you should set the value to `2048`, `3072`, or `4096`.
- `-key-id` `(string: "")` - Specifies the created certificate's key id.
- `-key-type` `(string: "")` - Specifies the key type for the generated ssh private key.
Supported values include `ed25519`, `ecdsa`, and `rsa`.
- `-ttl` `(string: "")` - The generated certificate's time-to-live.
- `-username` `(string: "")` - The username to use with the SSH certificate.
- `-vault-path` `(string: "")` - The path in Vault to request credentials from.
</Tab>
</Tabs>
@include 'cmd-option-note.mdx'