Skip to content

Commit 1243d17

Browse files
Merge pull request #1618 from ilyesAj/feat/update_venafi_documentation
Update Venafi username/password authentication section
2 parents d46bde3 + c58cb87 commit 1243d17

File tree

1 file changed

+48
-36
lines changed

1 file changed

+48
-36
lines changed

content/docs/configuration/venafi.md

Lines changed: 48 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -151,8 +151,8 @@ credentials.
151151

152152
3. [Create a new application integration](https://docs.venafi.com/Docs/24.3/TopNav/Content/API-ApplicationIntegration/t-APIAppIntegrations-creating.php)
153153

154-
Create an application integration with name and ID `cert-manager`.
155-
Set the "Base Access Settings" to `certificate: manage,revoke`.
154+
Create an application integration with name and ID `cert-manager.io`.
155+
Set the "Base Access Settings" to `certificate: manage`.
156156

157157
"Edit Access" to the new application integration, and allow it to be used by the user you created earlier.
158158

@@ -163,7 +163,7 @@ credentials.
163163
--username k8s-xyz-automation \
164164
--password somepassword \
165165
-u https://tpp.example.com/vedsdk \
166-
--client-id cert-manager \
166+
--client-id cert-manager.io \
167167
--scope "certificate:manage,revoke"
168168
```
169169
@@ -177,53 +177,65 @@ credentials.
177177
178178
5. Save the access-token to a Secret in the Kubernetes cluster
179179
180-
```bash
181-
$ kubectl create secret generic \
182-
tpp-secret \
183-
--namespace=<NAMESPACE OF YOUR ISSUER RESOURCE> \
184-
--from-literal=access-token='YOUR_TPP_ACCESS_TOKEN'
185-
```
180+
```bash
181+
$ kubectl create secret generic \
182+
tpp-secret \
183+
--namespace=<NAMESPACE OF YOUR ISSUER RESOURCE> \
184+
--from-literal=access-token='YOUR_TPP_ACCESS_TOKEN'
185+
```
186186
187187
### Username / Password Authentication
188188
189-
> ⚠️ When you supply a Venafi TPP username and password,
190-
> cert-manager uses an older authentication method which is called "API Keys",
191-
> which has been deprecated since Venafi TPP `19.2`.
192-
>
193-
> Beginning in Venafi TPP `22.2`, "API Keys" are disabled by default.
194-
> You will need to contact Venafi customer support for a special license key which will allow you to re-enable the "API Keys" feature,
195-
> so that you can continue to use username and password authentication with cert-manager.
196-
>
197-
> In Venafi TPP `22.3`, the "API Keys" feature will be permanently removed,
198-
> and you will need to use access-token authentication instead.
199-
>
200-
> 📖 Read [Deprecated functionality from Venafi Platform](https://docs.venafi.com/22.3/deprecation-list-current)
201-
> and [Functionality Scheduled for Deprecation](https://support.venafi.com/hc/en-us/articles/115001662292) for more information.
189+
> **Note**: when using username / password authentication, cert-manager will manage the generation of access token for you . cert-manager does not use refresh tokens to renew access token.
202190
203-
```bash
204-
$ kubectl create secret generic \
205-
tpp-secret \
206-
--namespace=<NAMESPACE OF YOUR ISSUER RESOURCE> \
207-
--from-literal=username='YOUR_TPP_USERNAME_HERE' \
208-
--from-literal=password='YOUR_TPP_PASSWORD_HERE'
209-
```
191+
1. Create a new user with sufficient privileges to manage certificates in a particular policy folder (zone).
210192
211-
> Note: If you are configuring your issuer as a `ClusterIssuer` resource in
212-
> order to issue `Certificates` across your whole cluster, you must set the
213-
> `--namespace` parameter to `cert-manager`, which is the default `Cluster
214-
> Resource Namespace`. The `Cluster Resource Namespace` can be configured
215-
> through the `--cluster-resource-namespace` flag on the cert-manager controller
216-
> component.
193+
E.g. `k8s-xyz-automation`
194+
195+
2. [Create a new application integration](https://docs.venafi.com/Docs/24.3/TopNav/Content/API-ApplicationIntegration/t-APIAppIntegrations-creating.php)
196+
197+
Create an application integration with name and ID `cert-manager.io`.
198+
Set the "Base Access Settings" to `certificate: manage`.
199+
200+
"Edit Access" to the new application integration, and allow it to be used by the user you created earlier.
201+
202+
3. Save the credentials to a Secret in the Kubernetes cluster
203+
204+
```bash
205+
$ kubectl create secret generic \
206+
tpp-secret \
207+
--namespace=<NAMESPACE OF YOUR ISSUER RESOURCE> \
208+
--from-literal=username='YOUR_TPP_USERNAME_HERE' \
209+
--from-literal=password='YOUR_TPP_PASSWORD_HERE'
210+
```
211+
212+
213+
> Note: By default cert-manager uses `cert-manager.io` as client ID when authenticating to Venafi. You can customize this by adding `client-id` key to the secret:
214+
>```bash
215+
>$ kubectl create secret generic \
216+
> tpp-secret \
217+
> --namespace=<NAMESPACE OF YOUR ISSUER RESOURCE> \
218+
> --from-literal=username='YOUR_TPP_USERNAME_HERE' \
219+
> --from-literal=password='YOUR_TPP_PASSWORD_HERE' \
220+
> --from-literal=client-id='YOUR_TPP_CLIENT-ID_HERE'
221+
>```
217222
218223
These credentials will be used by cert-manager to interact with your Venafi TPP
219-
instance. Username attribute must be adhere to the `<identity
224+
instance. Username attribute must adhere to the `<identity
220225
provider>:<username>` format. For example: `local:admin`.
221226
222227
Once the Secret containing credentials has been created, you can create your
223228
`Issuer` or `ClusterIssuer` resource. If you are creating a `ClusterIssuer`
224229
resource, you must change the `kind` field to `ClusterIssuer` and remove the
225230
`metadata.namespace` field.
226231
232+
> ℹ️ If you are using a `ClusterIssuer` resource, the Secret containing the credentials must be in the `Cluster
233+
> Resource Namespace`, which is `cert-manager` by default. The `Cluster Resource Namespace` can be configured
234+
> through the `--cluster-resource-namespace` flag on the cert-manager controller
235+
> component.
236+
>
237+
> 📖 Read [Issuer Configuration](./README.md#cluster-resource-namespace) to learn more about the concept of a ClusterIssuer and the Cluster Resource Namespace
238+
227239
Save the below content after making your amendments to a file named
228240
`tpp-issuer.yaml`.
229241

0 commit comments

Comments
 (0)