Skip to content

Archive

Least Privilege

13 articles
Cybersecurity 10 Sep 2026 9 min read

Require Independent Approval for High-Risk Administrative Actions

Some administrative actions are too consequential to depend on one account making one decision. An administrator might be compromised, might misunderstand the target, or might simply select the wrong option. If that one identity can immediately disable a critical control, grant powerful access, or approve a destructive change, ordinary authentication cannot distinguish a legitimate decision from a costly mistake. Independent approval changes that failure mode. One authorized person proposes the action, and a different authorized person must approve the same action before it can execute. The control is sometimes called two-person approval or a four-eyes rule. Its useful security property is narrower than those names suggest: a single administrator’s authority is insufficient for a defined class of high-risk operations.

Cybersecurity 09 Sep 2026 10 min read

Keep Package Publishing Credentials Out of Untrusted Builds

A build job often needs to compile code, run tests, and create an artifact. It usually does not need permission to publish a new version that other people will install. That distinction matters because build systems process code and configuration that change frequently. A pull request, dependency update, test helper, build script, or compromised developer account can influence what runs during a build. If every such build also receives a long-lived package registry credential, code that only needed to be tested may inherit authority to release software.

Cybersecurity 08 Sep 2026 12 min read

Separate Credentials by Environment

A development environment often needs the same kinds of integrations as production: a database, an object store, an email provider, a payment sandbox, or an internal API. Reusing one credential across those environments can look convenient because there is only one value to provision and rotate. The cost appears when a lower-trust environment is compromised. If a credential copied into development also works against production, the attacker has crossed an environment boundary without defeating another authentication control. A secret that was intended to simplify configuration has become a bridge between systems with different risk.

Cybersecurity 08 Sep 2026 12 min read

Revoke Access When Identity Ownership Ends

Access is often granted deliberately and removed accidentally. A developer joins a project and receives repository access. A contractor gets an administrative role for a migration. A service account is created for an integration. Months later, the person leaves, the project ends, or the integration is replaced, but some of the access remains. That leftover access is a security problem because its original justification has disappeared. A credential may still work, a group membership may still grant permissions, or an unattended service identity may still be able to call sensitive systems. If that identity or credential is later misused, the system may accept the request even though nobody can explain why the access still exists.

Cybersecurity 07 Sep 2026 10 min read

Require Independent Approval for High-Impact Actions

Some administrative actions are dangerous for a reason that ordinary role-based access control does not fully address: one authorized identity can cause an unusually large or difficult-to-reverse effect. Consider an administrator who can disable organization-wide authentication controls, replace a production signing key, or permanently delete a large body of security-relevant data. Strong authentication and least privilege reduce who can reach that action. They do not help enough if the one account that is legitimately allowed to perform it is compromised, or if its operator makes a serious mistake.

Cybersecurity 07 Sep 2026 13 min read

Recheck Authorization When Resource Ownership Changes

Changing who owns a resource can look like an ordinary data update. In a security model, it can be much more important: ownership often determines who may read the resource, change it, share it, or grant access to somebody else. If an application changes the owner_id but leaves every related permission untouched, people who were legitimate collaborators under the old owner may silently keep access after the resource crosses into a new security boundary. The reverse can also happen: a transfer may remove access that the new owner expected to inherit.

Cybersecurity 06 Sep 2026 11 min read

Separate Human and Service Identities

A developer needs a background job to read from an internal API. The fastest solution may be to reuse the developer’s own account, save its credential in the job, and move on. That shortcut quietly joins two different security problems. A human account is designed around a person’s login, employment, recovery, and interactive authentication. A service identity is used by software that runs without a person present. When one identity is forced to serve both roles, permissions become harder to limit, credentials are harder to rotate, and logs can no longer clearly tell whether an action came from a person or an automated workload.

Cybersecurity 06 Sep 2026 11 min read

Review Access Before Privileges Become Permanent

Access control can be correct on the day a permission is granted and still become risky later. A developer changes teams but keeps access to an old production project. A contractor finishes an engagement while a group membership remains active. A service account stops using a privileged operation, but its role is never reduced. None of these cases requires a broken authorization check. The system may enforce every permission exactly as configured. The problem is that the configured access no longer matches the current need.

Cybersecurity 06 Sep 2026 10 min read

Isolate Untrusted File Processing

Applications often need to inspect files they did not create. A service may resize an uploaded image, extract text from a document, read archive metadata, generate a preview, or scan a media file. Each task requires complex code to interpret attacker-controlled bytes. Input validation helps reject files that do not meet your rules, but it cannot guarantee that every parser and library is free of defects. If a file processor has a vulnerability, a specially constructed file may trigger behavior beyond ordinary parsing. The consequence depends heavily on what authority that processor has: access to application secrets, writable storage, internal services, or other users’ data can turn a parser failure into a much larger incident.

Cybersecurity 05 Sep 2026 8 min read

Review and Expire Privileged Access Grants

A permission can be correct when it is granted and dangerous six months later. A developer changes teams, a migration ends, a vendor contract closes, or an emergency exception is forgotten. The authorization system still sees a valid grant even though the business reason for it has disappeared. This is privilege accumulation: access grows over time because adding permissions is part of normal work while removing them is easy to miss. The practical defense is to treat privileged access as something with a lifecycle, not a permanent fact. After reading this article, you should be able to design grants that can be reviewed, expired, and removed without depending on someone remembering every old exception.

Cybersecurity 04 Sep 2026 9 min read

Prevent Confused Deputy Problems with Explicit Authority

A service can enforce authentication correctly, hold only legitimate credentials, and still perform an action that the requester was never allowed to cause. This happens when a privileged component uses its own authority without preserving enough information about who asked for the action and what that requester may do. This class of mistake is called the confused deputy problem. The deputy is a component that has legitimate access to a resource. It becomes confused when it cannot distinguish an authorized use of that access from a request that merely causes it to exercise its privilege on someone else’s behalf.

Cybersecurity 03 Sep 2026 10 min read

Separate High-Risk Actions with Dual Control

Some actions are too consequential to depend on one authenticated account making one correct decision. Deleting a production backup, changing a payment destination, disabling a security control, granting organization-wide administrator access, or rotating a recovery credential can all be legitimate operations. The problem is that a stolen administrator session, a compromised account, or a simple human mistake may turn the same capability into a serious incident. Dual control reduces this risk by separating a sensitive action into at least two independent decisions. One person requests the action, and another authorized person approves it before the system executes it.

Cybersecurity 02 Sep 2026 6 min read

Apply Least Privilege to Application Access

Least privilege is the practice of giving an identity only the access required to perform its current job. The identity may be a person, application, service account, CI job, or automated process. The principle sounds simple, but useful implementations go beyond creating a few roles. Permissions change over time, applications accumulate capabilities, and emergency exceptions often become permanent. Least privilege therefore needs both careful design and regular maintenance. Start from required actions, not convenient roles A common mistake is to begin with a broad role such as admin, editor, or operator and assign it because it makes an application work quickly.