8000 Update based on review comments · nginx/kubernetes-ingress@85bbe18 · GitHub
[go: up one dir, main page]

Skip to content

Commit 85bbe18

Browse files
committed
Update based on review comments
1 parent ebf15d7 commit 85bbe18

File tree

2 files changed

+17
-13
lines changed

2 files changed

+17
-13
lines changed

docs-web/configuration/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,6 @@ Configuration
99
virtualserver-and-virtualserverroute-resources
1010
handling-host-and-listener-collisions
1111
policy-resource
12+
security
1213
transportserver-resource
1314
configuration-examples

docs-web/configuration/security.md

Lines changed: 16 additions & 13 deletions
35
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,45 @@
11
# Security
22

3-
We consider the security of the Ingress Controller paramount to the success of our users and use the following to
4-
ensure the security of the Ingress Controller:
3+
The security of the Ingress Controller is paramount to the success of our Users, and we use the following tools and processes to develop software as securely as possible.
54
* [Secure Development Life Cycle](https://www.microsoft.com/en-us/securityengineering/sdl/)
6-
* [FOSSA](https://fossa.com) scanning
5+
* [FOSSA](https://fossa.com) for scanning
76

87
However, the Ingress Controller is deployed by a User in their environment, and as such, the User takes responsibility
98
for securing a *deployment* of the Ingress Controller.
10-
We highly recommend every User to read and understand the following security concerns.
9+
We strongly recommend every User read and understand the following security concerns.
1110

1211
## Kubernetes
1312
We recommend the Kubernetes [guide to securing a cluster](https://kubernetes.io/docs/tasks/administer-cluster/securing-a-cluster/).
1413
In addition, the following relating more specifically to Ingress Controller.
1514

1615
### RBAC and Service Account
1716
The Ingress Controller is deployed within a Kubernetes environment, this environment must be secured.
18-
Kubernetes uses [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac/) to control which types of users
19-
can access which resources and what operations they can perform.
17+
Kubernetes uses [RBAC](https://kubernetes.io/docs/reference/access-authn-authz/rbac/) to control the resources and operations available to different types of users.
2018
The Ingress Controller requires a service account which is configured using RBAC.
2119
We strongly recommend using the [RBAC configuration](https://github.com/nginxinc/kubernetes-ingress/blob/master/deployments/rbac/rbac.yaml) provided in our standard deployment configuration.
2220
It is configured with the least amount of privilege required for the Ingress Controller to work.
2321

22+
We strongly recommend inspecting the RBAC configuration (for [manifests installation](https://github.com/nginxinc/kubernetes-ingress/blob/master/deployments/rbac/rbac.yaml)
23+
or for [helm](https://github.com/nginxinc/kubernetes-ingress/blob/master/deployments/helm-chart/templates/rbac.yaml))
24+
to understand what access the Ingress Controller service account has and to which resources.
25+
For example, by default the service account has access to all Secret resources in the cluster.
26+
2427
### Certificates and Privacy Keys
2528
Secrets are required by the Ingress Controller for some configurations.
2629
[Secrets](https://kubernetes.io/docs/concepts/configuration/secret/) are stored by Kubernetes unencrypted by default.
27-
We highly recommend configuring Kubernetes to store these Secrets encrypted at rest.
30+
We strongly recommend configuring Kubernetes to store these Secrets encrypted at rest.
2831
Kubernetes has [documentation](https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/) on how to configure this.
2932

3033
## Ingress Controller
3134

32
### Recommended Secure Defaults
3336
We recommend the following for the most secure configuration:
34-
* If Prometheus metrics are [enabled](https://docs.nginx.com/nginx-ingress-controller/configuration/global-configuration/command-line-arguments/#cmdoption-enable-prometheus-metrics),
35-
we recommend [configuring HTTPS](https://docs.nginx.com/nginx-ingress-controller/configuration/global-configuration/command-line-arguments/#cmdoption-prometheus-tls-secret) for Prometheus.
37+
* If Prometheus metrics are [enabled](/nginx-ingress-controller/configuration/global-configuration/command-line-arguments/#cmdoption-enable-prometheus-metrics),
38+
we recommend [configuring HTTPS](/nginx-ingress-controller/configuration/global-configuration/command-line-arguments/#cmdoption-prometheus-tls-secret) for Prometheus.
3639

3740
### Snippets
38-
[Snippets](https://docs.nginx.com/nginx-ingress-controller/configuration/ingress-resources/advanced-configuration-with-snippets/)
39-
are a powerful feature which enable the injection of NGINX config.
41+
[Snippets](/nginx-ingress-controller/configuration/ingress-resources/advanced-configuration-with-snippets/)
42+
is a powerful feature which enable the injection of NGINX config.
4043
This can be useful for a proof of concept or debugging.
41-
Snippets are disabled by default as they can be used to inject malicious config.
42-
We recommend they are not used in production.
44+
The Snippets feature is disabled by default as it can be used to inject malicious config.
45+
We recommend it is not used in production.

0 commit comments

Comments
 (0)
0