forked from istio/istio
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement Istio auth config for clusters (istio#357)
* Implement Istio auth config generation (istio#339). * Command line can specify Istio TLS auth and config file paths. * Set ssl_context for outbound traffic clusters. * More tests are needed. * Fix broken integration test. * Fix service account naming issues and bugs. * Change Istio auth to boolean argument. * Apply ssl_context for all outbound routing cases. * Add unit tests for GetIstioServiceAccounts. * Add Istio auth doc. * Always create SSL context regardless of errors. * Use SSL context that requires verify_subject_alt_name for clusters. * Do not apply SSL context to TCP traffic. * Some nit fixes. * Fix formatting. * Fix format. * Fix format. * Fix format. * Some bug fixes.
- Loading branch information
Showing
17 changed files
with
333 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Securing Communication Between Services | ||
|
||
**NOTE: This feature is under implementation.** | ||
|
||
## Configure Istio Auth | ||
|
||
Istio auth enforces mutual-TLS for proxy-to-proxy traffic, to provide authentication and security for the intra-cluster | ||
traffic. Istio auth is transparent to the backend applications. Proxies use the service accounts (the identities of the | ||
pods that the serivce is running on) to authenticate the other side. Currently, Istio auth can only be enabled | ||
cluster-wise, through istio manager command line flag. | ||
|
||
### Command Line Flags | ||
|
||
Istio manager agent uses the following flags to configure Istio auth: | ||
|
||
- **enable_auth** Default value *false*. When true, enforces mTLS auth for all proxy-proxy traffic. | ||
- **auth_config_path** Default value *"/etc/certs"*. When "enable_auth" is true, proxy reads mTLS config files from this path. | ||
|
||
### Auth Config Files | ||
|
||
For the proxy to do mTLS authentication, the Istio manager needs to mount the following files to the *auth_config_path*. | ||
These files can be generated by [Istio CA](https://github.com/istio/auth). They should be mounted into | ||
*auth_config_path* when the proxy starts (for example, mounted as *volume* in Kubernetes). | ||
|
||
- **cert-chain.pem** The certificate chain for the proxy. | ||
- **key.pem** The private key for the proxy. | ||
- **root-cert.pem** The root certificates the proxy uses to authenticate other proxies. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.