Add service sunset period with failure randomization
Repository details (node-dnssec-name-shame)
- Project page
- node-dnssec-name-shame
- Project log category
- node-dnssec-name-shame (177 entries)
- Repository
- @joelpurra/node-dnssec-name-shame
- Owner
- @joelpurra
- Issues
- Issues on Github
- Contributors
- Contributors on Github
- Project status
- ⏲️ This project has had recent commits.
- 📂 This project is open.
- 🌠 This project is popular.
- Repository activity period
- 🗓—
- Commits
- 174 commits
- Stars
- 15 stars
Commit details (c68a47e2)
- Author
- Joel Purra
- Authored at
- Committer
- Joel Purra
- Committed at
Commit message
Add service sunset period with failure randomization
- Since DNAS is being decommissioned, the internal DNSSEC domain JSON lookup API will also shut down.
- While the service was not intended for public consumption, there have previously been indications that some third-party users have relied on the functionality.
- To not surprise users too much, this commit introduces logic to randomly deny service requests during a configured sunset period.
- Each request is evaluated against the sunset "progress" calculated at request time, as well as a random value.
- Here "progress" implies that the threshold the random value needs to "pass" is increasing, up to a configured maximum.
- If the random value does not pass the threshold, the request deliberately fails with a
501 Not Implementedresponse.- While there is a configured start/target sunset date, there is no actual fixed shutdown date -- it depends on the server administrators, and may land before or after the target.
Raw text
Add service sunset period with failure randomization - Since DNAS is being decommissioned, the internal DNSSEC domain JSON lookup API will also shut down. - While the service was not intended for public consumption, there have previously been indications that some third-party users have relied on the functionality. - To not surprise users too much, this commit introduces logic to randomly deny service requests during a configured sunset period. - Each request is evaluated against the sunset "progress" calculated at request time, as well as a random value. - Here "progress" implies that the threshold the random value needs to "pass" is increasing, up to a configured maximum. - If the random value does not pass the threshold, the request deliberately fails with a `501 Not Implemented` response. - While there is a configured start/target sunset date, there is no actual fixed shutdown date -- it depends on the server administrators, and may land before or after the target.