High School IntermediateModule I8Lesson 2 of 8

I8.2 Authentication, Sessions, and Access Control

Learn how fictional applications identify users, authenticate accounts, create and protect sessions, enforce roles and object permissions, secure sensitive actions, revoke access, investigate unusual requests, and validate that legitimate workflows still work.

Lesson Progress

Authentication, Sessions, and Access Control

High School IntermediateI8: Web Security Defense • Lesson 2 of 8

25% complete

Readiness Check

Before You Start

0/5 ready

Professional Hook

Signed In Does Not Mean Allowed to Do Everything

A fictional teacher can sign in successfully and still be denied a district-wide export. A support administrator can reset selected factors without gaining payroll approval. A valid session can expire, be revoked, or require reauthentication before a sensitive action. Defenders protect applications by checking identity, session, role, resource, tenant, workflow, and business context at every trust boundary.

Weak design

“The fictional user is signed in, so trust the role and record ID supplied by the browser.”

Strong design

“Derive trusted identity and tenant context from the session, then enforce server-side role, permission, ownership, workflow, and sensitive-action checks.”

Objective 1

Explain how fictional identification, authentication, authorization, sessions, cookies, tokens, roles, permissions, and resource ownership work together.

Objective 2

Distinguish successful sign-in from valid session use, authorized action, object-level access, business approval, and confirmed data change.

Objective 3

Evaluate fictional password, MFA, recovery, session, logout, timeout, device, cookie, token, and access-control evidence.

Objective 4

Identify defensive controls for account lifecycle, least privilege, role checks, ownership checks, session protection, reauthentication, and high-risk actions.

Objective 5

Create a professional fictional Authentication, Session, and Access Control Review with findings, owners, validation, monitoring, and residual risk.

Why This Matters

Most Protected Web Actions Depend on Several Connected Controls

A password, factor, cookie, token, role, and hidden button do not independently protect a resource. Strong defense combines secure authentication, limited sessions, server-side authorization, object and tenant checks, least privilege, sensitive-action confirmation, detailed logs, narrow response, and evidence-based validation.

Authentication Flow

Eight Stages from Identity Claim to Session End

1. Identity claim

A fictional user enters an account name, chooses a saved identity, follows an approved sign-in link, or presents a service identity.

Evidence

Account identifier, tenant, application, route, device, client, timestamp, and sign-in request ID.

Defensive question

Is the claimed account expected to use this application, route, tenant, and client?

Limitation

An identity claim alone proves nothing about who controls the account.

2. Primary authentication

The fictional identity service evaluates a password, key, certificate, device credential, or another approved primary factor.

Evidence

Method label, result, timestamp, account, device, sign-in ID, failure reason, and policy decision.

Defensive question

Was the approved method used, and did the result come from the expected identity service?

Limitation

A successful primary factor may still involve stolen credentials or an unsafe recovery path.

3. Additional factor

The fictional system requires another factor such as an authenticator approval, hardware key, code, or device-bound proof.

Evidence

Factor type, challenge ID, result, device, number matching, location label, and risk context.

Defensive question

Was the factor expected, owned, securely enrolled, and approved by the correct user?

Limitation

An approval can be mistaken, pressured, or captured through weak workflows.

4. Risk and policy evaluation

The fictional identity service considers device state, network context, account risk, application sensitivity, and access policy.

Evidence

Risk label, device compliance, application, location label, policy name, grant controls, and denial reason.

Defensive question

Which policy applied, and did it match the application and risk?

Limitation

Risk scores and location labels are interpretations, not proof of a physical person or malicious intent.

5. Session creation

The fictional application or identity provider creates server-side session state, a cookie, a token, or a related session identifier.

Evidence

Session ID, token ID, cookie attributes, issue time, expiration, audience, scope, device, and account.

Defensive question

Is the session narrowly scoped, protected, time limited, and connected to the correct application?

Limitation

A session can remain valid even when later account risk or authorization context changes.

6. Authorization check

The fictional application checks role, permission, ownership, tenant, resource, workflow state, and business rules for each protected action.

Evidence

Account, role, permission, resource ID, owner, route, decision, policy, and reason.

Defensive question

Is this identity allowed to perform this exact action on this exact object now?

Limitation

Authentication success does not replace per-action and per-object authorization.

7. Sensitive-action protection

The fictional application may require reauthentication, confirmation, dual approval, transaction limits, or another high-risk control.

Evidence

Action, amount or scope, confirmation, approval chain, reauthentication result, and final decision.

Defensive question

Does the action require stronger proof or a second accountable owner?

Limitation

A normal session may be insufficient for high-impact changes.

8. Logout, expiration, or revocation

The fictional session ends through logout, inactivity, maximum lifetime, password change, risk response, administrator action, or account disablement.

Evidence

Session ID, reason, owner, revoke time, expiration, application logout, and later request result.

Defensive question

Did the session actually become unusable across relevant applications and devices?

Limitation

Closing a browser window does not always end server-side or token-based sessions.

Session Defense

Eight Controls That Protect Fictional Sessions

Secure cookie transport

A fictional Secure attribute limits cookie transmission to approved encrypted transport.

Evidence

Set-Cookie metadata, scheme, browser behavior, application baseline, and test result.

Control gap

Without the attribute, a cookie may be exposed over an unintended nonsecure path.

Validation

Confirm approved HTTPS requests include the cookie and nonsecure requests do not.

HTTP-only cookie access

A fictional HttpOnly attribute prevents normal page scripts from directly reading the session cookie.

Evidence

Cookie attributes, browser inspection, application design, and safe validation result.

Control gap

Without it, browser-side script flaws can increase session exposure risk.

Validation

Confirm application functionality works while page scripts cannot directly read the protected cookie.

Same-site restrictions

A fictional SameSite setting limits when a browser sends the cookie from cross-site contexts.

Evidence

Cookie attributes, request context, origin relationship, application flow, and browser result.

Control gap

A weak setting may increase exposure to unintended cross-site state-changing requests.

Validation

Test approved same-site workflows and denied cross-site requests without breaking required identity redirects.

Narrow domain and path

A fictional cookie is sent only to the required host and application path.

Evidence

Cookie Domain, Path, host architecture, subdomain ownership, and request records.

Control gap

Overbroad scope can expose session state to unrelated applications or subdomains.

Validation

Confirm the cookie reaches only the intended application endpoints.

Idle timeout

A fictional session expires after a defined period without approved activity.

Evidence

Last activity, timeout policy, expiration event, later request result, and user notification.

Control gap

Long idle periods can leave unattended sessions usable.

Validation

Confirm normal activity refreshes the session as designed and inactive sessions are denied after the limit.

Maximum session lifetime

A fictional session must end after a fixed total duration even if activity continues.

Evidence

Issue time, maximum age, renewal rules, reauthentication event, and final expiration.

Control gap

Unlimited renewal can keep stolen or forgotten sessions active too long.

Validation

Confirm the application requires approved reauthentication after the maximum lifetime.

Session rotation

A fictional session identifier changes after sign-in, privilege elevation, recovery, or another sensitive transition.

Evidence

Old session ID, new session ID, transition event, invalidation result, and later request behavior.

Control gap

Reusing the same identifier across trust changes can preserve unsafe session state.

Validation

Confirm the old identifier no longer works after rotation.

Targeted revocation

A fictional user or defender can end selected sessions, devices, applications, or token families.

Evidence

Session inventory, revoke request, owner, reason, result, and blocked later use.

Control gap

Password changes alone may not end every active session or token.

Validation

Confirm revoked sessions fail while approved unaffected sessions behave according to policy.

Core Concept

Separate Five Decisions

Identity

Which fictional account, service, device, or workload claims to be acting?

Authentication

Which fictional evidence and policy support accepting that identity claim?

Session

Which fictional application state connects later requests to the accepted account?

Authorization

May that identity perform this exact action on this exact resource now?

Impact

Which fictional application, database, file, transaction, permission, or business state actually changed?

Access Control Models

Eight Ways Applications Decide Who May Do What

Role-based access

A fictional teacher role can view assigned classes, while a registrar role can update enrollment records.

Strong control

Server-side role checks combined with resource and workflow checks.

Weak control

Hiding an administrative button in the browser without enforcing the decision on the server.

Evidence

Role assignment, route, permission, account, resource, decision, and audit record.

Object ownership

A fictional student may view their own profile but not another student’s profile.

Strong control

Server-side comparison between authenticated account, tenant, resource owner, and allowed relationship.

Weak control

Trusting a user-supplied record ID because it came from the normal interface.

Evidence

Account, object ID, owner, tenant, relationship, authorization result, and data response.

Attribute-based access

A fictional document is available only to staff in the correct department, region, project, and approved time window.

Strong control

A documented policy evaluates trusted identity, resource, environment, and business attributes.

Weak control

Accepting unverified client-supplied attributes as authoritative.

Evidence

Policy name, trusted attributes, decision, reason, resource, and time.

Tenant isolation

A fictional school district account may access only records belonging to its own district tenant.

Strong control

Every server-side query and action includes trusted tenant context derived from the authenticated session.

Weak control

Using only a tenant value supplied in the URL or form.

Evidence

Session tenant, object tenant, query filter, route, result, and database record.

Administrative privilege

A fictional support administrator may reset selected user factors but cannot approve payroll changes.

Strong control

Separate roles, reauthentication, approval, detailed logging, time limits, and least privilege.

Weak control

One broad administrator role with permanent access to unrelated functions.

Evidence

Admin role, action, target, approval, session, reason, result, and review.

Workflow authorization

A fictional purchase request requires requester, manager, and finance approval before payment.

Strong control

The server enforces sequence, separation of duties, amount limits, and current workflow state.

Weak control

Trusting a client field that says the request is approved.

Evidence

Workflow ID, current state, actor, role, approvals, amount, transition, and system-of-record result.

Temporary access

A fictional contractor receives project access for two weeks.

Strong control

Named owner, exact scope, start time, expiration, monitoring, and automatic removal.

Weak control

Permanent group membership with no review date.

Evidence

Access request, owner, scope, start, expiration, usage, review, and removal.

Service-to-service access

A fictional reporting service reads approved summary data from an API.

Strong control

Dedicated service identity, narrow scope, audience restriction, key rotation, network policy, and monitoring.

Weak control

Shared human administrator credentials embedded in application configuration.

Evidence

Service identity, token scope, audience, endpoint, request ID, action, and data result.

Evidence Matrix

What Identity and Access Evidence Can Prove

Evidence source

Identity-provider sign-in record

Can support

The fictional account, authentication methods, risk, device, client, application, policy, and sign-in result.

Limitation

A successful sign-in does not prove correct object authorization or identify the physical person with certainty.

Evidence source

Session inventory

Can support

The fictional session or token ID, issue time, expiration, application, device, scope, and revocation state.

Limitation

Inventory may not show every downstream application session or browser action.

Evidence source

Application authorization log

Can support

The fictional account, role, permission, resource, tenant, policy, decision, and denial reason.

Limitation

Logging can be incomplete, and a denied request may have related activity elsewhere.

Evidence source

Cookie or token metadata

Can support

The fictional scope, audience, expiration, domain, path, security attributes, and selected claims.

Limitation

Metadata should be handled safely and does not alone prove how the server validated or used it.

Evidence source

Database or system-of-record log

Can support

The fictional resource read, write, transaction, object, row count, commit, rollback, and final state.

Limitation

The database may not directly identify the originating browser user without correlation.

Evidence source

Mailbox, browser, or device evidence

Can support

The fictional user interaction, device, browser, application, session transition, and local result.

Limitation

Client evidence can be incomplete and should be correlated with server-side records.

Evidence source

User and owner report

Can support

The fictional intended action, expected access, recognized session, role need, and observed application behavior.

Limitation

Human statements require documentary and technical correlation.

Evidence source

Access-governance record

Can support

The fictional access request, business justification, approving owner, role, scope, duration, review, and removal.

Limitation

An approval record does not prove the application enforced the approved scope correctly.

Defensive Workflow

Review Authentication, Sessions, and Access in Six Steps

1

Define the identity and action

Record the fictional account, application, session, device, requested action, target resource, business purpose, and expected result.

2

Trace authentication

Review fictional primary factors, MFA, risk, recovery, device, policy, sign-in result, and session creation.

3

Review session protection

Evaluate fictional cookie or token scope, attributes, rotation, timeout, maximum lifetime, logout, and revocation.

4

Evaluate authorization

Compare fictional role, permission, ownership, tenant, workflow, resource state, and high-risk-action controls.

5

Correlate impact

Check fictional application, API, database, audit, user, and business evidence for completed access or state change.

6

Remediate and validate

Apply narrow fictional access changes, session actions, control improvements, positive tests, negative tests, monitoring, and closure.

Case Classification

Eight Outcomes with Different Evidence Requirements

Expected authenticated access

The fictional account, factor, device, application, session, role, object, and business purpose match the approved workflow.

Required documentation

Record identity, session, role, resource, action, result, owner, and supporting system evidence.

Authentication concern

The fictional sign-in, factor, recovery, device, risk, or policy evidence is unusual or unauthorized.

Required documentation

Preserve sign-in and factor records, assign identity owners, review sessions, and state confidence and gaps.

Session-control weakness

The fictional cookie, token, timeout, rotation, logout, revocation, or scope behavior is broader or weaker than the approved baseline.

Required documentation

Record affected sessions, applications, attributes, lifetime, exposure, remediation, and validation.

Authorization denial working as designed

The fictional application rejects an action because role, permission, ownership, tenant, workflow, or resource conditions are not met.

Required documentation

Record the request, policy, denial, user context, related activity, and confirmation that no state change occurred.

Authorization weakness

The fictional application permits a function or resource action outside the approved identity, object, tenant, workflow, or role scope.

Required documentation

Record exact resource and action, evidence, affected scope, owner, containment, remediation, and validation.

Legitimate privileged action

The fictional administrative action is authorized, reauthenticated, approved, logged, narrowly scoped, and connected to a valid business purpose.

Required documentation

Record role, session, action, target, approvals, result, review, and expiration where applicable.

User-interface exposure without server impact

The fictional page reveals an unavailable function, but the server or API correctly denies the protected action.

Required documentation

Separate usability or information exposure from confirmed data access or state change.

Evidence incomplete

The fictional sign-in, session, authorization, device, application, database, user, or business evidence is insufficient for a reliable conclusion.

Required documentation

State the gap, confidence, temporary control, owner, due date, and decision criteria.

Correlated Access Timeline

Follow a Fictional Teacher Session from Sign-In to Validation

10:02:01

Sign-in

A fictional teacher account completes password and authenticator verification from a known managed device.

Authentication and device context are confirmed for the approved portal.

10:02:04

Policy

The fictional identity policy grants access to the student-support application.

The account meets the sign-in policy for this application.

10:02:06

Session

The application creates a fictional session with Secure, HttpOnly, SameSite=Lax, a thirty-minute idle timeout, and eight-hour maximum lifetime.

The session protections and limits are documented.

10:05:12

Request

The teacher views an assigned student-support record.

Normal role and assignment-based access succeeds.

10:07:20

Request

The same session requests /admin/user-export for a district-wide export.

A high-privilege function is attempted from a normal teacher session.

10:07:21

Authorization

The application denies the request because the teacher role lacks export permission.

Server-side function authorization works.

10:07:22

Database

No fictional export job, file, or database read is created.

No confirmed data export or business impact follows the denied request.

10:08:10

User report

The teacher says the administrative route appeared after following an old bookmarked link.

A plausible nonmalicious explanation exists but requires application and browser review.

10:09:00

Browser

The fictional browser history confirms the old bookmark and no modified query or script activity.

Client evidence supports accidental navigation.

10:11:30

Application review

The administrative page shell loads before the export API rejects the action.

The interface reveals an unavailable function even though the server protects the data action.

10:15:00

Finding

The case identifies effective API authorization but weak interface-level route handling.

Security and usability findings are separated.

10:18:00

Remediation

The application adds server-verified route gating and a safe not-authorized page for nonadministrative roles.

The change reduces confusing exposure without relying on client hiding alone.

10:24:00

Positive test

A fictional administrator completes the approved export after reauthentication and dual approval.

Legitimate privileged use remains available.

10:27:00

Negative test

The teacher role cannot load the administrative route or call the export API.

Both interface and server controls deny unauthorized use.

10:31:00

Session test

The fictional teacher session expires after the configured idle period and requires sign-in again.

Idle timeout behaves as expected.

Day 7

Monitoring

No new teacher-role requests reach the export function, and legitimate administrator exports continue normally.

Short-term validation supports the change.

Key Vocabulary

Authentication, Session, and Access Terms

Identification

A fictional claim about which account, user, service, device, or workload is attempting to act.

Authentication

A fictional process that evaluates evidence such as passwords, factors, certificates, keys, devices, or recovery checks before accepting an identity claim.

Authorization

A fictional decision about whether an authenticated identity may perform a specific action on a specific resource under current policy.

Session

A fictional period of application activity connected to an authenticated account through server-side state, a cookie, a token, or another identifier.

Session cookie

A fictional browser-managed value used to connect later requests to a server-recognized session under defined domain, path, secure, HTTP-only, and same-site conditions.

Token

A fictional signed or opaque value representing selected identity, session, scope, audience, expiration, or authorization information.

Role

A fictional named set of responsibilities and permissions assigned to accounts or groups.

Permission

A fictional allowed action such as view, create, update, approve, delete, manage, export, or administer.

Least privilege

The defensive principle of granting only the access required for the approved task, scope, and duration.

Object ownership

The fictional relationship between an account and a specific record, file, profile, project, ticket, or other resource.

Reauthentication

A fictional requirement to prove identity again before a sensitive action or after elevated risk.

Session revocation

A fictional defensive action that invalidates selected session or token state before its normal expiration.

Fake Dashboard

Fake Authentication and Access Review Dashboard

Training dashboard for the fictional Meadowbrook student-support application.

Active sessions

312

Fictional user and service sessions across approved applications, devices, and roles.

Denied requests

27

Role, permission, ownership, tenant, workflow, reauthentication, and expired-session denials.

Open access reviews

6

Temporary access, stale role, session-control, object-authorization, and evidence-gap cases.

Fake SOC Alert

Teacher Session Requests Administrative Export

Source: Fake Web Access Review Console • Time: 10:07 AM

Medium Severity
A fictional teacher account completes approved authentication from a known managed device, then follows an old bookmark to an administrative export route. The application API denies the action because the teacher role lacks export permission. No export job, file, database read, or business change is created.
Defensive recommendation: Preserve the session and request evidence, verify the bookmark and user explanation, confirm no downstream state change, improve route gating without relying on client hiding, test legitimate administrator export with reauthentication and approval, and monitor for repeated requests.

Fake Log Panel

Fake Authentication and Authorization Timeline

training-log-viewer.log
10:02:01 SIGN_IN account='teacher-204' primary='pass' mfa='pass' device='managed'
10:02:04 POLICY app='student-support' result='grant'
10:02:06 SESSION secure='true' http_only='true' same_site='Lax' idle='30m' max='8h'
10:05:12 ACCESS route='/assigned-record/771' role='teacher' result='allow'
10:07:20 REQUEST route='/admin/user-export' role='teacher'
10:07:21 AUTHORIZE permission='district_export' result='deny'
10:07:22 DATABASE export_job='none' file='none' data_change='none'
10:08:10 USER_REPORT cause='old_bookmark'
10:09:00 BROWSER bookmark='confirmed' modified_request='none'
10:11:30 UI admin_shell='visible' api_action='denied'
10:18:00 REMEDIATE server_route_gate='added' safe_denial_page='added'
10:24:00 POSITIVE_TEST role='administrator' reauth='pass' dual_approval='pass' export='success'
10:27:00 NEGATIVE_TEST role='teacher' route='denied' api='denied'
10:31:00 SESSION_TEST idle_timeout='pass'
DAY7 MONITOR repeated_teacher_export_requests='0' legitimate_admin_exports='normal'

Training note: this is fake data for defensive analysis practice only.

Analyze the Evidence

Which Access-Control Conclusion Is Best Supported?

The fictional teacher completes approved password and MFA from a known managed device.
The teacher session includes secure cookie attributes and defined lifetime limits.
The session requests an administrative export route through an old bookmark.
The server-side API denies the export because the teacher role lacks permission.
No export job, file, database read, or business-system change is found.
The browser record confirms the old bookmark and no modified request behavior.
The administrative page shell is visible before the API denial.
After remediation, the teacher cannot load the route while an approved administrator can export after reauthentication and dual approval.

Which conclusion is strongest?

Common Mistakes

Mistakes That Weaken Identity and Access Defense

Treating a fictional successful sign-in as proof that every later request is authorized.
Assuming a valid session identifies the physical person with certainty.
Checking permissions only in the browser instead of enforcing them on the server or API.
Trusting a user-supplied role, tenant, account ID, owner ID, approval state, or resource identifier.
Granting broad permanent administrator access when a narrow temporary role would meet the need.
Changing a password without reviewing and revoking unsafe sessions, factors, tokens, recovery paths, and mailbox rules.
Assuming logout succeeded everywhere because the browser window closed.
Using very long session lifetimes for sensitive applications without reauthentication.
Failing to rotate fictional session identifiers after sign-in, recovery, or privilege elevation.
Treating an authorization denial as proof of malicious intent without reviewing user, browser, route, and business context.
Closing after a denied request without confirming no database, export, file, payment, or other state change occurred.
Publishing real cookies, tokens, session IDs, account names, access records, screenshots, or private application data.

Safe Practice Lab

Complete a Fictional Authentication and Access Review

Fictional Evidence Set

Meadowbrook Access Review

Review thirty-eight supplied fictional records covering sign-ins, factors, devices, sessions, cookies, tokens, roles, permissions, ownership, tenants, temporary access, administrative actions, application decisions, database state, user reports, validation, monitoring, and closure.

Required Analysis

  1. Map the fictional identification, authentication, factor, policy, session, and authorization stages.
  2. Review cookie or token scope, attributes, issue time, expiration, rotation, logout, and revocation.
  3. Compare role, permission, object ownership, tenant, workflow, temporary access, and sensitive-action controls.
  4. Separate successful sign-in, valid session, attempted action, authorization result, database state, and business impact.
  5. Document confirmed facts, reasonable conclusions, alternative explanations, confidence, and evidence gaps.
  6. Recommend narrow access changes, session actions, positive tests, negative tests, monitoring, rollback, and closure.
Use only supplied fictional evidence. Do not test real applications, access accounts, copy cookies or tokens, change permissions, bypass controls, impersonate users, or publish real credentials, sessions, identifiers, screenshots, access records, or private data.

Scenario Decision Lab

A Valid Session Requests Another User’s Record

A fictional signed-in student changes a record identifier in the browser and requests another student’s profile. The browser permits the request, but the server has not yet checked object ownership.

Scenario Decision Lab

A Password Is Reset but Old Sessions Remain Active

A fictional user completes an approved password reset after reporting an unexpected sign-in. The account password changes, but two old application sessions and one remembered browser session remain valid.

Defender Habits

Authentication, Sessions, and Access Control Checklist

Check Your Understanding

I8.2 Mini Quiz: Authentication, Sessions, and Access Control

Choose your answers first. Explanations appear only after submission.

1. What is the difference between authentication and authorization?

2. What does a fictional valid session most directly support?

3. Which access-control design best protects a fictional student profile?

4. Why should a fictional session identifier rotate after sign-in or privilege elevation?

5. A fictional teacher requests an administrator export and receives a server-side denial. What is the strongest immediate conclusion?

6. Which temporary-access design is strongest?

7. Which closure plan is strongest after a fictional session and access-control concern?

Portfolio Prompt

Portfolio Prompt

Create a fictional Authentication, Session, and Access Control Review using at least thirty-eight sign-in, factor, device, policy, cookie, token, session, role, permission, ownership, tenant, workflow, application, database, user-report, remediation, validation, monitoring, and closure records. Include the authentication flow, session-control baseline, access-control matrix, normalized timeline, findings, owners, positive tests, negative tests, rollback, evidence gaps, residual risk, and closure criteria.

Use only fictional accounts, applications, sessions, cookies, tokens, devices, roles, records, and organizations.
Include one expected access case, one denied privileged action, one object-authorization weakness, one stale temporary-access case, and one evidence-incomplete session case.
Keep sign-in success, session validity, authorization, data access, and business impact separate.
Do not include real credentials, cookies, tokens, session IDs, account names, screenshots, or private application data.

Key Takeaways

What You Should Remember

1.Authentication accepts an identity claim; authorization decides whether that identity may perform a specific action on a specific resource.
2.A valid session is not a universal permission and must remain protected, limited, rotated, expired, and revocable.
3.Role checks should be combined with object, tenant, workflow, ownership, and business-rule checks.
4.Client-side hiding improves usability but does not replace server-side enforcement.
5.Sign-in, session use, attempted action, authorization result, database state, and business impact require separate evidence.
6.Strong closure validates legitimate access, denied conditions, sessions, factors, data state, monitoring, evidence gaps, residual risk, and owner approval.

Navigation

Continue Module I8