Security API
Зачем
Обеспечение информационной безопасности API.
Паттерны
- OWASP TOP 10
- Проверка API
- Ролевой доступ (RBAC, ABAC и тп) к методам АПИ
- Использование SSL
- Валидация входных данных
- Web Application Firewall (WAF)
- IP Whitelisting
- Rate Limiting
- Error Handling
- API Versioning
Схемы аутентификации
- Token-Based Authentication
- Bearer Authentication
- JWT Bearer обычно токен в формате JWT
- Unlike API key and Basic authentication, token-based authentication offers higher security. Tokens can expire, reducing the window of vulnerability if compromised, and we can cryptographically sign for added security.
- Аутентификация OIDC - Авторизация OAuth
- API key - Данная схема обеспечивает защиту от несанкционированного использования API и позволяет осуществлять, например, проверку лимитов использования API.
- Лучше перейти на Bearer Token, JWT Token
- .NET Core example in header
- key rotation and safe storage (Key Value Store - Vault), which leaves their API keys vulnerable to theft
- Store API keys as hashed values
- Implement rate limiting
- cookie
- ntlm ldap
- http basic
- digest
- form
- swt
- ws security
- ssl client
- HMAC
REST
- REST Best Practice - TLS, OAuth, OIDC SSO
- Исключать создание методов массовых изменений