Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

annotations: introduce security annotations. #28

Merged
merged 5 commits into from
May 8, 2020

Conversation

htuch
Copy link
Collaborator

@htuch htuch commented May 1, 2020

This is the start of some work to automate tracking of fields that
should be set in the presence of untrusted downstreams/upstreams. In the
future we could add recommended settings etc.

Relates to envoyproxy/envoy#9087

Signed-off-by: Harvey Tuch htuch@google.com

This is the start of some work to automate tracking of fields that
should be set in the presence of untrusted downstreams/upstreams. In the
future we could add recommended settings etc.

Relates to envoyproxy/envoy#9087

Signed-off-by: Harvey Tuch <htuch@google.com>
@htuch
Copy link
Collaborator Author

htuch commented May 1, 2020

CC @antoniovicente

Signed-off-by: Harvey Tuch <htuch@google.com>
htuch added 2 commits May 4, 2020 21:00
Signed-off-by: Harvey Tuch <htuch@google.com>
Signed-off-by: Harvey Tuch <htuch@google.com>
htuch added a commit to htuch/envoy that referenced this pull request May 5, 2020
…vironments.

This PR is an early prototype of a new flow for indicating that fields
needs to be set in the presence of untrusted downstreams/upstreams.

Based on the (yet to be merged)
cncf/udpa#28, a worked example of a YAML example
in bootstrap.proto for overload_manager is provided. The new security
annotations are validated during docs build for correctness and used to
generate inline docs where fields are defined.

This is intended to supplement and eventually replace
https://www.envoyproxy.io/docs/envoy/latest/configuration/best_practices/edge#best-practices-edge.

Work still to be done:
- Decide if this is the approach we want to take.
- Fix protoformat toolchain to work with fields inside the annotations.
- Annotate remaining fields from
https://www.envoyproxy.io/docs/envoy/latest/configuration/best_practices/edge#best-practices-edge
- Cleanup protodoc Python for style reasons and make error handling more robust.

Risk level: Low
Testing: Docs inspection

Part of envoyproxy#9087

Signed-off-by: Harvey Tuch <htuch@google.com>
@htuch
Copy link
Collaborator Author

htuch commented May 5, 2020

See envoyproxy/envoy#11058 for usage.

Signed-off-by: Harvey Tuch <htuch@google.com>
@htuch
Copy link
Collaborator Author

htuch commented May 8, 2020

Dropped the example configs in favor of a manifest based approach inside the Envoy repo, ready for review.

Copy link
Collaborator

@mattklein123 mattklein123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks.

@htuch htuch merged commit 3b31d02 into cncf:master May 8, 2020
@htuch htuch deleted the security-annotations branch May 8, 2020 20:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants