SShortSingh.
Back to feed

Keycloak Step-Up Authentication: ACR and LoA Flows, and the Cookie Bypass Gap

0
·6 views

Step-up authentication lets users sign in with a lightweight method, such as a password or managed-device passkey, and requires a stronger factor only for sensitive actions like changing payout details or approving transfers. Keycloak implements this through Authentication Context Class Reference (ACR) values mapped to numeric Levels of Authentication (LoA), configured in the login flow instead of application code. The setup involves a realm-level ACR-to-LoA mapping, a browser flow with conditional subflows guarded by level conditions, and client requests that specify the required level. Keycloak's levels are hierarchical, which fits poorly when several unrelated authentication methods are considered equivalent. The guide also flags two places where step-up can quietly fail to protect an application.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Claude Code MCP Setup: Where Server Configuration Lives and How Scopes Conflict

Claude Code must know about an MCP server through configuration before it can connect to it. Definitions can be stored at project, user, or local scope, or be provided centrally by an organization, depending on who should use them. A project's shared .mcp.json file can declare a team's server without exposing personal credentials, while local scope keeps individual secrets private to one project. When the same server name appears in several scopes, Claude Code uses the complete entry from the highest-precedence source rather than merging fields. Organization-managed definitions override the other sources when duplicated.

0
ProgrammingDEV Community ·

Track Your Net Worth Monthly in Google Sheets With Assets, Debts, and a Growth Chart

Net worth, the gap between what you own and what you owe, is presented as a clearer indicator of financial direction than bank balance alone. The guide walks readers through building a monthly tracker in Google Sheets, with an accounts list tagged as assets or debts and a column for each month. Formulas total assets and debts, calculate net worth and its monthly change, and compute a debt ratio that the author suggests keeping below 50%. A line chart of net worth over time and a category breakdown with a pie chart are also described. The article closes with a promotion for the author's own paid and free budget templates.

0
ProgrammingDEV Community ·

Why specific names beat generic ones, from a murder statue to IKEA

An essay argues that naming something gives people a handle on it, even when the thing is dangerous. It contrasts the nickname 'Peanut' for a deadly statue in a horror story with the template-generated names common among software companies. The author contends that generic, consultant-style names fit everyone and so tell no one anything. The piece cites IKEA's place-based and occupation-based naming as an example of specificity that scales, and suggests specific names are easier to remember and repeat.

0
ProgrammingDEV Community ·

BlockVectra Data API TypeScript client v0.1.3 rejects missing API keys at startup

The BlockVectra Data API TypeScript client now throws an error when it is created with a missing, empty or whitespace-only key, catching configuration mistakes before the first request. Non-empty keys are passed through unchanged, with validity still checked by the API itself. Version 0.1.3 is distributed as a prebuilt GitHub package, not yet through npm's public registry, and includes JavaScript and TypeScript declarations. The release also adds an isDataApiError guard that identifies structured JSON error responses while preserving the original HTTP status. The developers note that the release passed unit tests and example checks, but the credentialed live API test was skipped.