mirror of
https://github.com/external-secrets/external-secrets.git
synced 2024-12-15 17:51:01 +00:00
71 lines
1.6 KiB
Markdown
71 lines
1.6 KiB
Markdown
|
|
||
|
![Onboardbase External Secrets Provider](../pictures/onboardbase-provider.png)
|
||
|
|
||
|
## Onboardbase Secret Management
|
||
|
|
||
|
Sync secrets from [Onboardbase](https://www.onboardbase.com/) to Kubernetes using the External Secrets Operator.
|
||
|
|
||
|
## Authentication
|
||
|
|
||
|
### Get an Onboardbase [API Key](https://docs.onboardbase.com/reference/api-auth).
|
||
|
|
||
|
Create the Onboardbase API by opening the organization tab under your account settings:
|
||
|
|
||
|
![Onboardabse API Key](../pictures/onboardbase-api-key.png)
|
||
|
|
||
|
|
||
|
|
||
|
And view them under the team name in your Account settings
|
||
|
|
||
|
|
||
|
![Onboardabse API Key](../pictures/onboardbase-create-api-key.png)
|
||
|
|
||
|
Create an Onboardbase API secret with your API Key and Passcode value:
|
||
|
|
||
|
```sh
|
||
|
HISTIGNORE='*kubectl*' \
|
||
|
kubectl create secret generic onboardbase-auth-secret \
|
||
|
--from-literal=API_KEY=*****VZYKYJNMMEMK***** \
|
||
|
--from-literal=PASSCODE=api-key-passcode
|
||
|
```
|
||
|
|
||
|
Then to create a generic `SecretStore`:
|
||
|
|
||
|
```yaml
|
||
|
{% include 'onboardbase-generic-secret-store.yaml' %}
|
||
|
```
|
||
|
|
||
|
## Use Cases
|
||
|
|
||
|
The below operations are possible with the Onboardbase provider:
|
||
|
|
||
|
1. [Fetch](#1-fetch)
|
||
|
2. [Fetch all](#2-fetch-all)
|
||
|
3. [Filter](#3-filter)
|
||
|
|
||
|
Let's explore each use case using a fictional `auth-api` Onboardbase project.
|
||
|
|
||
|
### 1. Fetch
|
||
|
|
||
|
To sync one or more individual secrets:
|
||
|
|
||
|
```yaml
|
||
|
{% include 'onboardbase-fetch-secret.yaml' %}
|
||
|
```
|
||
|
|
||
|
### 2. Fetch all
|
||
|
|
||
|
To sync every secret from a config:
|
||
|
|
||
|
```yaml
|
||
|
{% include 'onboardbase-fetch-all-secrets.yaml' %}
|
||
|
```
|
||
|
|
||
|
### 3. Filter
|
||
|
|
||
|
To filter secrets by `path` (path prefix), `name` (regular expression) or a combination of both:
|
||
|
|
||
|
```yaml
|
||
|
{% include 'onboardbase-filtered-secrets.yaml' %}
|
||
|
```
|