Skip to content

Commit

Permalink
Added security considerations document (#3488)
Browse files Browse the repository at this point in the history
* Added security considerations document

* Update SECURITY_CONSIDERATIONS.md

Co-authored-by: Asbjørn Ulsberg <asbjorn@ulsberg.no>

* Update SECURITY_CONSIDERATIONS.md

Co-authored-by: Asbjørn Ulsberg <asbjorn@ulsberg.no>

* Add note about external references being potentially on untrusted domains

* Update SECURITY_CONSIDERATIONS.md

Co-authored-by: Ralf Handl <ralf.handl@sap.com>

* Update SECURITY_CONSIDERATIONS.md

Co-authored-by: Lorna Jane Mitchell <lorna@lornajane.net>

* Added note about security schemes

---------

Co-authored-by: Asbjørn Ulsberg <asbjorn@ulsberg.no>
Co-authored-by: Ralf Handl <ralf.handl@sap.com>
Co-authored-by: Lorna Jane Mitchell <lorna@lornajane.net>
  • Loading branch information
4 people authored Mar 3, 2024
1 parent 6f38696 commit f466c87
Showing 1 changed file with 15 additions and 0 deletions.
15 changes: 15 additions & 0 deletions SECURITY_CONSIDERATIONS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Security Considerations

OpenAPI documents use JSON, YAML, and JSON Schema, and therefore share their security considerations:
- [JSON](https://datatracker.ietf.org/doc/html/rfc8259)
- [YAML](https://datatracker.ietf.org/doc/html/rfc9512)
- [JSON Schema Core](https://json-schema.org/draft/2020-12/json-schema-core#section-13)
- [JSON Schema Validation](https://json-schema.org/draft/2020-12/json-schema-validation#name-security-considerations)

In addition, OpenAPI documents are processed by a wide variety of tooling for numerous different purposes, such as client code generation, documentation generation, server side routing, and API testing. OpenAPI document authors must consider the risks of the scenarios where the OpenAPI document may be used.

An OpenAPI document describes the security schemes used to protect the resources it defines. The security schemes available offer varying degrees of protection. Factors such as the sensitivity of the data and the potential impact of a security breach should guide the selection of security schemes for the API resources. Some security schemes, such as basic auth and OAuth Implicit flow, are supported for compatibility with existing APIs. However, their inclusion in OpenAPI does not constitute an endorsement of their use, particularly for highly sensitive data or operations.

OpenAPI documents may contain references to external resources that may be dereferenced automatically by consuming tools. External resources may be hosted on different domains that may be untrusted. References in an OpenAPI document, or across OpenAPI documents may cause a cycle. Tooling must detect and handle cycles to prevent resource exhaustion.

Certain properties allow the use of Markdown which can contain HTML including script. It is the responsibility of tooling to appropriately sanitize the Markdown.

0 comments on commit f466c87

Please sign in to comment.