All lessons Leer en español

Security in depth · Unit 25 · Lesson 12 of 12

Case: review a cloud permission proposal

Turn a fictional identity inventory and approved workflows into a narrow, reviewable access plan.

10 minready

Helpful before thisCloud security: who owns which problem?Machines need identities too

After this lesson you can

  • Compare granted operations with owner-approved business needs.
  • Separate evidence of use from evidence of required or effective permission.
  • Write a staged least-privilege proposal with owners and acceptance criteria.

You advise Harbor Club, a fictional community organization. Its data owner, Nina, has approved the intended workflows below. Platform engineer Omar asks for a written permission proposal before making changes. Your task is to reason from the supplied inventory, not to inspect accounts or construct a provider policy.

An effective permission is an operation an identity is allowed to perform on a resource after applicable grants, restrictions, and request conditions are evaluated. A role’s name alone does not establish that result.

Stage 1: read the evidence packet

The storage inventory has four areas. Published notices contain approved public information. Attendance totals contain aggregate counts for internal planning. Member contacts contain private contact records. Summaries contain internal weekly reports. These are distinct resources in this fictional model; their names alone do not enforce permissions.

Identity Current grant Nina’s approved need
daily-report Read, write, and delete across all four areas. Read attendance totals; write summaries.
event-editors Read and write across all four areas. Read and write published notices.
coordinators Read all four areas. Read member contacts and summaries.
temporary-export Read member contacts. Export engagement ended; no ongoing purpose is approved.

Public viewing of published notices is independent of these authenticated role grants. Removing a role does not make public information private.

The supplied seven-day activity sample shows daily-report reading totals and writing summaries. It shows no deletes. It does not cover monthly operations, inherited grants, resource policies, or every integration. Nina confirms the export engagement ended, but Omar has not completed its dependency review. Treat these as explicit limits on the evidence.

Proposed job permissionsdaily-report is proposed to read attendance totals and write summaries, without contacts access or deletion. Verify effective permissions through allowed and denied outcomes.Proposed job permissionsApproved purposeRead attendance totalsWrite summariesOutside the approved roleNo member-contact accessNo deletionVerify the combined grantsRequired work succeedsUnapproved actions are deniedReview changes with the owner
Proposed daily-report access follows the approved workflow. This diagram is a proposal, not evidence that effective permissions already match it.
PredictThe seven-day sample contains no deletes. Is that enough to remove every unused permission from every identity immediately?

No. Usage is a sample, not a complete business specification. Here, the approved workflow independently excludes deletion for daily-report, supporting a narrower proposal. Other identities and rare dependencies still need their own owner-confirmed needs and change review.

Stage 2: write the smallest justified proposal

For each row, distinguish the desired permission from the operation used to implement it. This exercise uses plain-language access rules; actual products combine assignments and conditions differently. Ask Omar to identify other grants that could preserve broad authority even after the visible role is narrowed.

Reveal a model access proposal

For daily-report, propose reading only attendance totals and writing only summaries. Exclude member contacts, published notices, and deletion. For event-editors, propose read/write access only to published notices. For coordinators, propose reading contacts and summaries without adding write rights. Nina owns these business decisions; Omar translates them into the selected service’s supported controls.

For temporary-export, record retirement as the intended outcome. Omar first identifies dependencies and any still-valid authority; Nina confirms an approved replacement if a necessary workflow remains. “No activity observed” alone is not the retirement evidence. No ongoing purpose is approved, so keeping access indefinitely also needs an explicit decision rather than silent drift.

The least-privilege proposal is not simply the smallest possible permission list. It is the narrowest set justified by required work and supported by the platform. If writing a summary also requires a specific supporting operation, Omar should document that dependency for Nina’s review instead of silently restoring administration over everything.

Stage 3: define acceptance before change

Use synthetic resources in the approved validation environment. For daily-report, the acceptance pair is: the intended job reads the designated totals and produces its summary; it cannot read synthetic member contacts or delete source totals. For event-editors, publishing an approved notice works while changing a summary is denied. For coordinators, approved reading works while modification is denied.

PredictOmar narrows the direct role, but an inherited assignment still grants broad access. Does the proposal pass?

No. The intended outcome concerns effective permission, not one edited assignment. Identify and review the other authority path. Keep required work available while correcting the combined grants through the approved change process.

Stage 4: hand over a decision, not a slogan

Your brief should name Nina as purpose owner and Omar as implementation owner, list unresolved dependencies, and identify evidence for allowed and denied outcomes. Schedule the change around the reporting job, define who can authorize a fallback, and set a review trigger after new workflows or staff changes.

A limited exception can be reasonable if it has a specific purpose, scope, owner, expiry, and verification. A broad role restored without that record merely recreates the original uncertainty. Finish with what is proposed, what is verified, and what still requires approval or evidence.

Check yourself

No timer. No penalties. Read the explanation and try again whenever you like.

  1. Which proposed permission set matches daily-report’s approved purpose?

    Show the answer

    Correct answer: Read attendance totals and write summaries, with necessary supporting operations reviewed. This follows the stated workflow without inventing authority over unrelated data.

  2. What does the seven-day absence of delete events establish?

    Show the answer

    Correct answer: No delete was observed in that sample; necessity needs the approved workflow and dependency context. The sample and the business requirement are different evidence.

  3. A direct role is narrower, but inherited authority still allows contacts access. Which result applies?

    Show the answer

    Correct answer: The outcome is not met; the additional grant needs review. Effective access remains broader than the approved purpose.

  4. How should temporary-export be handled?

    Show the answer

    Correct answer: Plan retirement after dependency and existing-authority review, with the purpose owner confirming any needed replacement. This respects the ended purpose while managing operational dependencies.

Try it

  • WriteProduce a four-row proposal for the supplied fictional identities. Include current grant, approved need, proposed change, owner, uncertainty, and an allowed/denied acceptance pair. Add a retirement condition for temporary-export. Submit nothing to a real service.
References