You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README-config.md
+17-5Lines changed: 17 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,18 +1,28 @@
1
1
# Vault Sync Tool - Configuration
2
2
3
+
Back: [README.md](README.md)
4
+
3
5
This document is aimed at Vault Administrators looking to alter the policies and access the Vault Sync Tool configures.
4
6
5
-
For users, the Vault Sync Tool maps client roles coming from OIDC to internal groups with policies that manage what the group can do. For services, it maps App Roles to policies that manage what the service can do.
7
+
For users, the Vault Sync Tool maps client roles coming from OIDC to internal groups with policies that manage what the group can do. For services, it maps [AppRoles](https://developer.hashicorp.com/vault/docs/auth/approle) to policies that manage what the service can do.
8
+
9
+
## Configuring OIDC
10
+
11
+
Configuring OIDC is out of scope for the Vault Sync Tool. The tool assumes there is another process (manual or automated) that maps end users to the roles included in their token.
12
+
13
+
It is extremely important that roles are correctly mapped.
6
14
7
15
## Defined Groups
8
16
9
-
The 'group' here refers to a grouping of policies and not a Vault group. This allows for the syncing of a specific group of policies (like apps or system) by themselves. A group is a collection of policies aimed at solving a class of access.
17
+
A group is a collection of policies aimed at solving a class of access. This allows for the syncing of a specific group of policies (like apps or system) by themselves.
18
+
19
+
The 'group' here is not a Vault group which is a separate thing.
10
20
11
21
| Group | Definition | Examples | Typical Usage |
12
22
| --- | --- | --- | --- |
13
-
| system | Policies that provide broad access of Vault or a specific part. | system/admin-super | Admin users |
14
-
| apps | Policies that an individual application needs for itself. | apps/fidq/prod-kv-read | Applications or developers of an application |
15
-
| groups | Policies for a group of end users (humans) | groups/appdelivery-user | A group of end users (application delivery, DBA, etc) |
23
+
| system | Policies that provide broad access to Vault. | system/admin-super | Admin users; Generic access|
24
+
| apps | Policies required by an individual application for its own use. | apps/fidq/prod-kv-read | Applications or developers of an application |
25
+
| groups | Policies for a group of end users (humans) | groups/appdelivery-user | A group of end users (developers, operations, security, auditors, management) |
16
26
17
27
### Policy Naming Pattern
18
28
@@ -24,6 +34,8 @@ The tool uses a naming pattern that Vault admins need to be aware of. The patter
24
34
25
35
This repo includes a generic configuration in [./config](./config/). If you have specific needs, you can copy this folder to another repository and make your changes there.
26
36
37
+
If required, copy (or mount) your configuration to the config folder before you run the tool.
38
+
27
39
## File: config.json
28
40
29
41
This is a key value object. Each of the root keys will be described in a separate section.
Copy file name to clipboardExpand all lines: README-dev.md
+9-3Lines changed: 9 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,13 +27,13 @@ podman build . -t vsync
27
27
28
28
### With NR Broker
29
29
30
-
NR Broker's local setup will start a Vault container and run a setup script. No further setup should be required.
30
+
Setting up NR Broker locally involves starting a Vault container and executing a setup script. This process enables the Vault Sync Tool to operate seamlessly with the local installation, requiring no additional setup.
31
31
32
32
This is currently the only practical way to run the Vault Sync Tool because NR Broker is the only implemented data source for applications.
33
33
34
34
### Without NR Broker
35
35
36
-
The following will start up Vault in Podman. The Vault Sync Tool defaults to localhost:8200 for the address and myroot for the token.
36
+
The following will start up Vault in Podman. The Vault Sync Tool defaults to 'localhost:8200' for the address and 'myroot' for the token.
Copy file name to clipboardExpand all lines: README.md
+5-7Lines changed: 5 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Vault Sync Tool
2
2
3
-
The Vault Sync Tool configures HashiCorp Vault using data sources to allow applications and users to access Vault securely. It can read a static configuration or read dynamic data from the business intelligence tool, [NR Broker](https://github.com/bcgov-nr/nr-broker). It can monitor for changes in its datasources or be run on-demand.
3
+
The Vault Sync Tool configures HashiCorp Vault by utilizing data sources, enabling secure access for applications and users. It can either read a static configuration or dynamically retrieve data from the business intelligence tool, [NR Broker](https://github.com/bcgov-nr/nr-broker). Additionally, it can monitor data source changes or be run on-demand.
4
4
5
5
<!-- toc -->
6
6
*[Vault Sync Tool](#vault-sync-tool)
@@ -10,23 +10,21 @@ The Vault Sync Tool configures HashiCorp Vault using data sources to allow appli
10
10
11
11
## Running
12
12
13
-
The tool can be run from the source using Node.js or a release container image by using Podman or Docker.
13
+
The tool can be run from the source using Node.js or a container image by using Podman or Docker.
14
14
15
15
```
16
16
./bin/dev health
17
17
```
18
18
19
19
```
20
-
podman run --rm ghcr.io/bcgov-nr/vault-sync-app:v1.0.4 health
20
+
podman run --rm ghcr.io/bcgov-nr/vault-sync-app:v2.0.1 health
21
21
```
22
22
23
-
The sample command runs the health command. All the commands will probably require some arguments set up to work with your Vault.
24
-
25
-
The container expects to recieve a VAULT_ADDR and VAULT_TOKEN to load
23
+
The sample command runs the health command. All the commands will probably require some arguments set up to work with your installation of Hashicorp Vault. With no arguments set, it will try to use a local Vault installation with a static token.
26
24
27
25
## Environment Variables
28
26
29
-
The tool can use environment variables in place of most command arguments. It is recommended that all confidential paramaters (tokens, etc.) be set using environment variables.
27
+
The tool can utilize environment variables instead of most command arguments. It is recommended to set all confidential parameters (such as tokens) using environment variables. Specifically, the argument 'vault-token' should always be configured with the environment variable 'VAULT_TOKEN'.
30
28
31
29
These can be found by looking in the [src/flags.ts](src/flags.ts) file.
0 commit comments