Authentication vs authorization
Explain who the caller is first, then separately explain what that identity is allowed to read, change, or invoke.
Build a clear academic analysis of API authentication, object-level authorization, token handling, validation, abuse controls, logging, and secure design decisions.
A strong API report explains the request flow, trust boundaries, identity model, affected data, evidence, risk, and remediation. It should distinguish authentication from authorization rather than treating every access problem as the same weakness.
Before discussing a vulnerability, describe how the API is supposed to work. Identify the client, gateway or reverse proxy, application service, identity provider, database, and any third-party services. Then mark where credentials, tokens, personal data, or privileged actions cross a trust boundary.
This gives the report a technical foundation. It also makes later findings easier to explain because the reader can see which component should enforce a control and what could happen when that control is missing or inconsistent.
For a university case study, the goal is not to produce a list of buzzwords. The goal is to connect the design to a specific security property such as confidentiality, integrity, authorization, accountability, or availability.
Explain who the caller is first, then separately explain what that identity is allowed to read, change, or invoke.
Review whether identifiers, roles, scopes, and server-side permission checks prevent access to another user’s records or restricted actions.
Consider what the API accepts, what it returns, and whether unnecessary fields, weak validation, or verbose errors increase risk.
Good API coursework normally needs evidence: a request and response pair, a route definition, a sequence diagram, a code fragment, an access-control rule, or a safe test result. Label the evidence and explain what it proves. A screenshot without interpretation rarely demonstrates analysis.
If the brief references OWASP, use the category as a framework rather than as the entire finding. State the condition you observed, the affected asset, the likely impact, and the control that should be implemented. This creates a clear chain from evidence to recommendation.
Discuss token lifetime, audience and issuer checks, secure storage, revocation strategy, and the risks of placing excessive trust in client-controlled claims.
Explain how quotas, throttling, lockouts, idempotency, and monitoring can reduce automated abuse without blocking legitimate use.
Describe how structured logs support investigation while safe error responses avoid exposing stack traces, secrets, or internal object details.
A useful report sequence is: system context, scope, methodology, evidence, findings, risk evaluation, remediation, and validation. For each finding, state what the system currently does and what secure behaviour should look like.
When recommending a change, be specific enough to be useful without turning the report into an exploit guide. For example, recommend server-side object authorization on every protected route, schema validation before business logic, short-lived access tokens, and monitoring for repeated denied requests.
If your assignment overlaps with secure software design, the related secure coding and application security pages provide useful context for code review and remediation.
Before submitting, check that every conclusion is supported by evidence and that every recommendation maps back to a stated risk. Confirm that diagrams use consistent component names, API examples are redacted where necessary, and references point to authoritative documentation or course material.
Also verify that the report clearly states the authorized lab or academic scope. This is especially important when screenshots or testing tools are included.
The target, environment, allowed tests, and assumptions are stated clearly.
Evidence is labelled and the reader can understand why it supports the conclusion.
Recommendations identify where enforcement belongs and how success could be verified.
Yes. Support can map assignment scenarios to common API risk categories while keeping the explanation focused on the evidence and learning objective in your brief.
Yes. We can explain token claims, expiry, scopes, refresh flows, signature validation, and where authorization checks belong in a secure design.
Yes. Share the approved lab diagram, request/response samples, screenshots, or rubric and the guidance can be structured around those materials.
Yes. Practical examples should use approved labs, intentionally vulnerable training systems, or material supplied by your course.