This directory contains a list of tests proving that API Platform enforces OWASP's recommendations for REST APIs. If you find a vulnerability in API Platform, please report it according to the procedure detailed in the CONTRIBUTING.md file.
Authentication and session management is delegated to the Symfony Security component. This component has its own test suite.
Authorization is delegated to the Symfony Security component. This component has its own test suite.
Input validation is delegated to the Symfony Validator component (an implementation of the JSR-303 Bean Validation specification. This component has its own test suite.
Parsing is delegated to the Symfony Serializer component. This component has its own test suite.
Strong typing is ensured by our "strong typing" functional test suite
and the unit tests of the AbstractItemNormalizer
class.
You might also be interested to see how extra attributes are ignored.
Incoming content-types validation is ensured
by our "validate incoming content-types" functional test suite
and the unit tests of the DeserializeListener
class.
Response type validation is ensured
by our "validate response types" functional test suite
and the unit tests of the AddFormatListener
class.
XML parsing is delegated to the Symfony Serializer component. This component has its own test suite.
API Platform is shipped with the Symfony Validator component , one of the most popular framework validation in the world.
The sending of security headers is ensured
by our "send security headers" functional test suite
and the unit tests of the RespondListener
, ExceptionAction
and ValidationExceptionListener
.
API Platform relies on the Symfony Serializer component, to encode JSON. This component has its own test suite.
API Platform relies on the Symfony Serializer component, to encode XML. This component has its own test suite.
Cryptography for transit and storage should be enabled and properly configured on your servers depending of the nature of you application. API Platform natively supports both HTTPS (always recommended) and HTTP (for read-only public data only).
API Platform relies on the LexikJWTAuthenticationBundle, for JWT support. This bundle and the underlying JSON Object Signing and Encryption library for PHP library have their own test suites.
Setting proper HTTP return codes is delegated to the Symfony Security component. This component has its own test suite.