-
Notifications
You must be signed in to change notification settings - Fork 302
Description
Summary
Add a plain text file accessible at https://www.rust-lang.org/.well-known/security.txt that contains this text:
Contact: https://www.rust-lang.org/policies/security
Expires: 2025-05-15T00:00:00.000Z
Motivation
RFC 9116 proposes a machine-readable standard for websites to convey their security information. As a security-conscious project, we should participate. https://securitytxt.org/ contains more info on this idea.
Because our security information is already on https://www.rust-lang.org/policies/security, rather than duplicating that information, the spec of the security.txt file allows us to put a URL as the contact and direct people there.
Setting an "expires" date that is not "forever" is recommended to encourage periodic review; I chose Rust's birthday in about a year as the expiration date but that was rather arbitrary and I'm open to alternatives.
Drawbacks
- Periodic review and date updating will be needed.
- This may increase the automated reports the security team gets.
Rationale and alternatives
- We could serve this file from
/security.txt
as well as.well-known/security.txt
. - Someone with access to the PGP key could sign it.
Maintenance
The maintenance of this will likely be:
- Notice that the expiration date in the file is in the past
- Verify that https://www.rust-lang.org/policies/security is still the canonical resource for security information
- Send a PR updating the expiration date to be in the future
and would be a great task for a new contributor.
If we decide to sign it with the PGP key, someone with access to the key will need to re-sign it at whatever cadence we choose. This could also be a good low-stakes test that people who are supposed to have access to the key still have that access.
Ultimately, this will be the responsibility of the @rust-lang/security team, so they should approve this idea. I'm happy to send in an initial PR with whatever content they would like.
Unresolved Questions
Should any of the other optional fields be filled in? See https://securitytxt.org/ for a handy generator.