REST API Security Interview Questions and Answers
Top 10 REST API Security interview questions with detailed answers, production scenarios, and senior-level best practices.
REST APIs are the backbone of modern web and mobile applications. They expose business functionality over HTTP, making them one of the primary attack surfaces. Every backend developer should understand how to secure REST APIs using industry-standard practices.
Q1. What is REST API Security?
Answer
REST API Security is the process of protecting RESTful APIs from unauthorized access, attacks, and data breaches while ensuring confidentiality, integrity, and availability.
A secure REST API should provide:
- Authentication
- Authorization
- HTTPS Encryption
- Input Validation
- Rate Limiting
- Logging & Monitoring
Example
Insecure API
GET /api/accounts/1001
Anyone who knows the endpoint can access customer information.
Secure API
GET /api/accounts/1001
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5...
The server validates the JWT token before processing the request.
Q2. What are the common security threats in REST APIs?
Answer
Common threats include:
- Broken Authentication
- Broken Authorization
- SQL Injection
- Cross-Site Scripting (XSS)
- Cross-Site Request Forgery (CSRF)
- Sensitive Data Exposure
- API Key Leakage
- Brute Force Attacks
- Credential Stuffing
- Denial of Service (DoS)
Production Scenario
A banking API exposes:
GET /accounts/1001
Without authorization checks, changing the account ID to:
GET /accounts/1002
could expose another customer's data.
Q3. Why should REST APIs always use HTTPS?
Answer
HTTPS encrypts all communication between clients and servers.
Without HTTPS:
- Passwords can be intercepted.
- JWT tokens can be stolen.
- Sensitive customer information can be exposed.
- Attackers can perform Man-in-the-Middle (MITM) attacks.
Benefits
- Encryption
- Data Integrity
- Server Authentication
Interview Tip
Never expose login or payment APIs over HTTP.
Q4. Why should REST APIs be stateless?
Answer
REST follows a stateless architecture.
Every request should contain all the information required to authenticate and authorize the user.
Example:
GET /orders
Authorization: Bearer <JWT_TOKEN>
The server does not maintain client session information.
Benefits
- Better scalability
- Easier load balancing
- Simpler horizontal scaling
- Better suited for microservices
Q5. Which authentication methods are commonly used in REST APIs?
Answer
Common authentication methods include:
- JWT Authentication
- OAuth2
- API Keys
- Basic Authentication (legacy/internal systems)
- Mutual TLS (mTLS)
- OpenID Connect (OIDC)
Enterprise Recommendation
| API Type | Recommended Authentication |
|---|---|
| Public APIs | OAuth2 + JWT |
| Internal Microservices | mTLS + JWT |
| Partner APIs | OAuth2 Client Credentials |
| Legacy Systems | Basic Authentication over HTTPS |
Q6. How do you secure REST APIs in Spring Boot?
Answer
Spring Boot applications are commonly secured using Spring Security.
Typical security measures include:
- Spring Security
- JWT Authentication
- OAuth2 Resource Server
- Method-Level Security
- Role-Based Access Control (RBAC)
- Input Validation
- Exception Handling
- HTTPS
- Security Headers
Example:
@PreAuthorize("hasRole('ADMIN')")
@GetMapping("/users")
public List<User> getUsers() {
return service.findAll();
}
Only users with the ADMIN role can access this endpoint.
Q7. How do you prevent unauthorized access to REST APIs?
Answer
Use multiple layers of protection:
- JWT Validation
- OAuth2
- RBAC
- ABAC
- API Gateway
- Token Expiration
- Refresh Tokens
- Method-Level Authorization
Example
A customer should not be allowed to execute:
DELETE /users/100
Only administrators should have permission.
Q8. What HTTP security headers should REST APIs return?
Answer
Important security headers include:
- Strict-Transport-Security (HSTS)
- Content-Security-Policy (CSP)
- X-Content-Type-Options
- X-Frame-Options
- Referrer-Policy
- Cache-Control
Example:
Strict-Transport-Security:
max-age=31536000
These headers help prevent browser-based attacks and improve overall security.
Q9. How do you protect REST APIs from brute-force and DDoS attacks?
Answer
Use multiple protection mechanisms:
- Rate Limiting
- Request Throttling
- CAPTCHA (for login endpoints)
- Web Application Firewall (WAF)
- API Gateway
- IP Blocking
- Redis-based Rate Limiting
Example:
100 Requests / Minute
If the limit is exceeded:
HTTP/1.1 429 Too Many Requests
Q10. What are the REST API security best practices?
Answer
Follow these production best practices:
- Always use HTTPS
- Never expose sensitive data in URLs
- Use OAuth2 or JWT authentication
- Validate every client input
- Implement least privilege authorization
- Use an API Gateway
- Enable request logging and auditing
- Rotate secrets regularly
- Use short-lived access tokens
- Scan for vulnerabilities regularly
- Follow OWASP API Security recommendations
Production Security Architecture
Internet
│
HTTPS / TLS
│
Load Balancer
│
API Gateway
│
Authentication (JWT/OAuth2)
│
Rate Limiting / WAF
│
Spring Security Filter
│
Authorization (RBAC)
│
Business Services
│
Database
Senior Interview Tip
Enterprise-grade API security is never achieved with a single mechanism. Modern applications use layered security (Defense in Depth) by combining:
- HTTPS
- API Gateway
- Authentication
- Authorization
- Input Validation
- Rate Limiting
- Logging
- Monitoring
- Secret Management
This approach significantly reduces the attack surface and improves overall system resilience.
Quick Revision
- REST APIs should always use HTTPS.
- REST APIs should be stateless.
- Use JWT or OAuth2 for authentication.
- Apply RBAC or ABAC for authorization.
- Validate all client inputs.
- Protect against SQL Injection and XSS.
- Use API Gateway for centralized security.
- Implement rate limiting to prevent abuse.
- Enable logging and monitoring.
- Follow OWASP API Security best practices.