Skip to content

Commit 5932516

Browse files
committed
Container Security Provider Documentation
This change adds container security provider documentation.
1 parent 95f52d1 commit 5932516

2 files changed

Lines changed: 38 additions & 0 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ To learn how to configure various properties of the buildpack, follow the "Confi
7474
* Standard Frameworks
7575
* [AppDynamics Agent](docs/framework-app_dynamics_agent.md) ([Configuration](docs/framework-app_dynamics_agent.md#configuration))
7676
* [Container Customizer](docs/framework-container_customizer.md) ([Configuration](docs/framework-container_customizer.md#configuration))
77+
* [Container Security Provider](docs/framework-container_security_provider.md) ([Configuration](docs/framework-container_security_provider.md#configuration))
7778
* [Debug](docs/framework-debug.md) ([Configuration](docs/framework-debug.md#configuration))
7879
* [Dyadic EKM Security Provider](docs/framework-dyadic_ekm_security_provider.md) ([Configuration](docs/framework-dyadic_ekm_security_provider.md#configuration))
7980
* [Dynatrace Appmon Agent](docs/framework-dynatrace_appmon_agent.md) ([Configuration](docs/framework-dynatrace_appmon_agent.md#configuration))
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Container Security Provider
2+
The Container Security Provider Framework adds a Security Provider to the JVM that automatically includes BOSH trusted certificates and Diego identity certificates and private keys.
3+
4+
<table>
5+
<tr>
6+
<td><strong>Detection Criterion</strong></td>
7+
<td>Unconditional</td>
8+
</tr>
9+
<tr>
10+
<td><strong>Tags</strong></td>
11+
<td><tt>container-security-provider=&lt;version&gt;</tt></td>
12+
</tr>
13+
</table>
14+
Tags are printed to standard output by the buildpack detect script
15+
16+
## Configuration
17+
For general information on configuring the buildpack, including how to specify configuration values through environment variables, refer to [Configuration and Extension][].
18+
19+
The framework can be configured by modifying the [`config/container_security_provider.yml`][] file in the buildpack fork. The framework uses the [`Repository` utility support][repositories] and so it supports the [version syntax][] defined there.
20+
21+
| Name | Description
22+
| ---- | -----------
23+
| `repository_root` | The URL of the Container Customizer repository index ([details][repositories]).
24+
| `version` | The version of Container Customizer to use. Candidate versions can be found in [this listing][].
25+
26+
## Security Provider
27+
The [security provider][] added by this framework contributes two types, a `TrustManagerFactory` and a `KeyManagerFactory`. The `TrustManagerFactory` adds an additional new `TrustManager` after the configured system `TrustManager` which reads the contents of `/etc/ssl/certs/ca-certificates.crt` which is where [BOSH trusted certificates][] are placed. The `KeyManagerFactory` adds an additional `KeyManager` after the configured system `KeyManager` which reads the contents of the files specified by `$CF_INSTANCE_CERT` and `$CF_INSTANCE_KEY` which are set by Diego to give each container a unique cryptographic identity. These `TrustManager`s and `KeyManager`s are used transparently by any networking library that reads standard system SSL configuration and can be used to enable system-wide trust and [mutual TLS authentication][].
28+
29+
30+
[`config/container_security_provider.yml`]: ../config/container_security_provider.yml
31+
[BOSH trusted certificates]: https://bosh.io/docs/trusted-certs.html
32+
[Configuration and Extension]: ../README.md#configuration-and-extension
33+
[mutual TLS authentication]: https://en.wikipedia.org/wiki/Mutual_authentication
34+
[repositories]: extending-repositories.md
35+
[security provider]: https://github.com/cloudfoundry/java-buildpack-security-provider
36+
[this listing]: http://download.pivotal.io.s3.amazonaws.com/container-security-provider/index.yml
37+
[version syntax]: extending-repositories.md#version-syntax-and-ordering

0 commit comments

Comments
 (0)