Skip to content

Commit b3da2bd

Browse files
committed
Add a security warning about downstream reuse
Consumers have chronically looked to our list of tested dependency versions for guidance on what to install, without realizing their use case is different from ours or considering the security implications of that choice. Include a prominent security warning in the README.rst, global-requirements.txt and generated upper-constraints.txt files in hopes of making these risks clearer. Change-Id: If012a379f0c4ec63825a9617972d4579c9c1b413 Signed-off-by: Jeremy Stanley <fungi@yuggoth.org>
1 parent d953bdb commit b3da2bd

File tree

3 files changed

+31
-1
lines changed

3 files changed

+31
-1
lines changed

README.rst

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,17 @@
55
.. image:: https://governance.openstack.org/tc/badges/requirements.svg
66
:target: https://governance.openstack.org/tc/reference/tags/index.html
77

8+
Security Warning
9+
================
10+
11+
OpenStack makes no security guarantees about third-party
12+
dependencies listed here, and does not keep track of any
13+
vulnerabilities they contain. Versions of these dependencies are
14+
frozen at each coordinated release in order to stabilize upstream
15+
testing, and can contain known vulnerabilities. Consumers are
16+
*STRONGLY* encouraged to rely on curated distributions of OpenStack
17+
or manage security patching of dependencies themselves.
18+
819
Resources and Documentation
920
===========================
1021

global-requirements.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
### WARNING: OpenStack makes no security guarantees about third-party
2+
### dependencies listed here, and does not keep track of any
3+
### vulnerabilities they contain. Versions of these dependencies are
4+
### frozen at each coordinated release in order to stabilize upstream
5+
### testing, and can contain known vulnerabilities. Consumers are
6+
### *STRONGLY* encouraged to rely on curated distributions of OpenStack
7+
### or manage security patching of dependencies themselves.
8+
19
## section:general
210

311
aiomysql # MIT License

openstack_requirements/cmds/generate.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,17 @@
2626
from openstack_requirements import requirement
2727

2828

29+
SECURITY_WARNING = [
30+
"# WARNING: OpenStack makes no security guarantees about third-party",
31+
"# dependencies listed here, and does not keep track of any",
32+
"# vulnerabilities they contain. Versions of these dependencies are",
33+
"# frozen at each coordinated release in order to stabilize upstream",
34+
"# testing, and can contain known vulnerabilities. Consumers are",
35+
"# *STRONGLY* encouraged to rely on curated distributions of OpenStack",
36+
"# or manage security patching of dependencies themselves.",
37+
]
38+
39+
2940
def _parse_freeze(text):
3041
"""Parse a freeze into structured data.
3142
@@ -257,5 +268,5 @@ def main(argv=None, stdout=None):
257268
denylist = _parse_denylist(options.denylist)
258269
frozen = [
259270
*sorted(_combine_freezes(freezes, denylist), key=_make_sort_key)]
260-
stdout.writelines(frozen)
271+
stdout.writelines(SECURITY_WARNING + frozen)
261272
stdout.flush()

0 commit comments

Comments
 (0)