Skip to content

Commit 5ca4ea0

Browse files
author
Johannes Schneiders
committed
Typos
1 parent 4842d24 commit 5ca4ea0

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

API-PROTECTION.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ ApproovService.setBindingHeader("Authorization")
5050
In this case it means that the value of `Authorization` holds the token value to be bound. This only needs to be called once. On subsequent requests the value of the specified header is read and its value set as the token binding value. Note that you should select a header whose value does not typically change from request to request, as each change requires a new Approov token to be fetched.
5151

5252
### Prefetching
53-
If you wish to reduce the latency associated with fetching the first Approov token, then make this call immediately after creating `ApproovService`:
53+
If you wish to reduce the latency associated with fetching the first Approov token, then make this call immediately after initializing `ApproovService`:
5454

5555
```kotlin
5656
ApproovService.prefetch()

SECRETS-PROTECTION.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Secrets Protection
2-
You should use this option if you wish to protect access to 3rd party or managed APIs where you are not able to add an Approov token check to the backend. This allows client secrets, or API keys, used for access to be protected with Approov. Rather than build secrets into an app where they might be reverse engineered, they are only provided at runtime by Approov for apps that pass attestation. This substantially improves your protection and prevents these secrets being abused by attackers. Where you are able to modify the backend we recommend you use API Protection for further enchanced flexibility and security.
2+
You should use this option if you wish to protect access to 3rd party or managed APIs where you are not able to add an Approov token check to the backend. This allows client secrets, or API keys, used for access to be protected with Approov. Rather than build secrets into an app where they might be reverse engineered, they are only provided at runtime by Approov for apps that pass attestation. This substantially improves your protection and prevents these secrets being abused by attackers. Where you are able to modify the backend we recommend you use API Protection for further enhanced flexibility and security.
33

44
This quickstart provides straightforward implementation if the secret is currently supplied in a request header to the API. The quickstart interceptor is able to automatically rewrite headers as the requests are being made, to automatically substitute in the secret, but only if the app has passed the Approov attestation checks. If the app fails its checks then you can add a custom [rejection](#handling-rejections) handler.
55

66
These additional steps require access to the [Approov CLI](https://approov.io/docs/latest/approov-cli-tool-reference/), please follow the [Installation](https://approov.io/docs/latest/approov-installation/) instructions.
77

88
## ENABLING MANAGED TRUST ROOTS
9-
Client secrets or API keys also need to be protected in transit. For 3rd party APIs you should not pin against their certificates since you are not in control of when they might changed. Instead the [Managed Trust Roots](https://approov.io/docs/latest/approov-usage-documentation/#managed-trust-roots) feature can be used to protect TLS.
9+
Client secrets or API keys also need to be protected in transit. For 3rd party APIs you should not pin against their certificates since you are not in control of when they might be changed. Instead the [Managed Trust Roots](https://approov.io/docs/latest/approov-usage-documentation/#managed-trust-roots) feature can be used to protect TLS.
1010

1111
Ensure managed trust roots are enabled using:
1212

@@ -56,7 +56,7 @@ If the secret value is provided on the header `your-header` then it is necessary
5656
ApproovService.addSubstitutionHeader("your-header", null)
5757
```
5858

59-
With this in place the Approov interceptor should replace `your-placeholder` with the `your-secret` as required when the app passes attestation. Since the mapping lookup is performed on the placeholder value you have the flexibility of providing different secrets on different API calls, even if they passed with the same header name.
59+
With this in place the Approov interceptor should replace `your-placeholder` with the `your-secret` as required when the app passes attestation. Since the mapping lookup is performed on the placeholder value you have the flexibility of providing different secrets on different API calls, even if they are passed with the same header name.
6060

6161
You can see a [worked example](https://github.com/approov/quickstart-android-kotlin-retrofit/blob/master/SHAPES-EXAMPLE.md#shapes-app-with-secrets-protection) for the Shapes app.
6262

@@ -149,7 +149,7 @@ to lookup a secure string with the given `key`, returning `null` if it is not de
149149
This method is also useful for providing runtime secrets protection when the values are not passed on headers. Secure strings set using this method may also be looked up using subsequent networking interceptor header substitutions.
150150

151151
### Prefetching
152-
If you wish to reduce the latency associated with substituting the first secret, then make this call immediately after creating `ApproovService`:
152+
If you wish to reduce the latency associated with substituting the first secret, then make this call immediately after initializing `ApproovService`:
153153

154154
```kotlin
155155
ApproovService.prefetch()

0 commit comments

Comments
 (0)