StrongDM 201 · December 2025

Authentication
Deep Dive

A comprehensive interactive guide to how StrongDM verifies, manages, and protects identities and credentials across the proxy network.

8
Modules
4
Quiz Questions
~30
Minutes
OBJECTIVES

What you'll learn

  • Understand how identities are used in the StrongDM network
  • Understand how credentials are handled and protected
  • Explain the role that Identity Providers (IdP) play in authentication
  • Explain the role that secret stores play in authentication
01

How Proxies Work

🔁The Proxy Model

Proxies connect to resources on behalf of the user. Because a resource needs to verify that a requester is authorized, it typically checks credentials (e.g., username & password). When a proxy is involved, the proxy must possess the credentials so the resource will accept requests on the user's behalf.

🏗️StrongDM Proxy Architecture

In StrongDM, the proxy network consists of the StrongDM client and a Gateway / Relay. The user sends traffic through the client; the Gateway/Relay logs on to the resource and forwards traffic. The control plane handles routing.

Two sets of credentials
  • User → StrongDM client: The user presents credentials to log on to the StrongDM client.
  • Gateway/Relay → Resource: The Gateway/Relay uses its own credentials to connect to the resource. From the resource's perspective, it is the Gateway/Relay—not the user—that is logging in.
02

Flow: User → Resource

Click each step to see what happens at that stage.

① Log on to
StrongDM client
② Get connection
details from client
③ Connect to
resource
④ Use
resource
Step 1: Log on to StrongDM Client
Logging in identifies the user to the StrongDM network. User identity is associated with one or more Roles, which determine which resources the client can access. In a properly-configured environment, no resources appear by default (Zero Standing Privileges).
Step 2: Get Connection Details
After access is approved, the resource appears in the StrongDM client UI (e.g., 127.0.0.1:10006). Users can use any compatible tool (SSH client, DB client, browser) to connect using that address. Access requests go through the Catalog at Access → Request Access → Catalog.
Step 3: Connect to Resource
StrongDM uses a proprietary routing protocol in the control plane to find the optimal route from the client to the Gateway/Relay to the resource. Roles define access; Policies (if enabled) add an additional security layer governing what a user can do. The Gateway/Relay uses leased credentials or identity aliases for the last-mile hop.
Step 4: Use Resource
Once connected, traffic flows to the resource. StrongDM continues monitoring via session logs (SSH, RDP, Queries, etc.) uploaded to the control plane. PBAC (Policy-Based Action Controls) can inspect instructions/data in transit. Critically, future traffic is only permitted if previous session logs were successfully uploaded.
03

Identities on the StrongDM Network

🖧Nodes

Gateways and Relays that proxy traffic to resources. Identified by tokens generated at creation time. The token is tied to the specific network component.

GatewayRelayToken-based
👤Users

Identities that need access to resources; log on via the StrongDM client. User identities are not tied to a specific client machine—privileges are portable and follow the user across any client they log on to.

Email-basedPortableRole-driven
Key difference

Unlike Nodes, the StrongDM client does not require token generation during installation. The privileges assigned to a client are entirely determined by who is logged in at any given moment.

04

User Identities

🔷 Native StrongDM User

Created directly in StrongDM. Requires a unique email address on the tenant plus first/last name. Native users are password-protected but can gain additional security through 3rd-party integrations:

  • Identity Provider (IdP) / SSO
  • Multi-Factor Authentication (MFA)
PasswordIdP optionalMFA optional
🔷 Provisioned User

Created via an external identity management system and synced with StrongDM via SCIM/SAML. Key characteristics:

  • Cannot be modified from within StrongDM—changes are made at the source system
  • No duplication of user details; the external system is the source of truth
  • Access to resources is granted via Roles, same as native users
SCIM/SAMLExternal sourceRole-based access
PropertyNative UserProvisioned User
Created inStrongDM Admin UIExternal identity system
Edited inStrongDM Admin UIExternal system (synced)
AuthenticationSDM password + optional IdP/MFAVia external IdP
Resource accessVia RolesVia Roles (same)
05

Service Accounts

⚙️What are service accounts?

Service accounts support business-critical programs and processes that run continuously—websites, databases, automation scripts. Unlike human users, they cannot interactively authenticate. Their credentials must be widely known to the applications that interact with them.

⚠ Security Risk

Because service account credentials are widely shared and carry high-level privileges, they are prime targets for hackers. StrongDM helps mitigate this risk by managing and controlling access to these accounts.

🔑Admin Tokens

Service accounts authenticate to the StrongDM control plane using admin tokens. These tokens are generated at account creation time. Copy and store securely—they cannot be retrieved later.

🔌Auto-Connect

Since service accounts can't interactively authenticate, StrongDM offers Auto-Connect (standing access). This is disabled by default in keeping with Zero Standing Privileges best practices.

06

Integrating with Identity Providers (IdPs)

🔗What is IdP Integration?

When an Identity Provider is enabled, users receive an additional validation step after entering their StrongDM username and password. They are redirected to validate their identity through the IdP (e.g., "Log in with Google"). This supports both SSO and user provisioning.

🛠️Enabling IdP Integration

Configure at Settings → User Management → Single Sign-On in the Admin UI. IdP applies to both users and administrators. To prevent lockout during IdP outages, you can allow specific non-SSO users as exceptions.

Supported IdPs
🔵OpenID Connect
🟦Microsoft ADFS
Auth0
🔷Azure / Entra ID
🟢Google
🔐Keycloak
🟡Okta
1️⃣OneLogin (OIDC)
1️⃣OneLogin (SAML)
🏓Ping Identity SSO
📋SAML (generic)
☁️VMware Workspace ONE
07

Multi-Factor Authentication (MFA)

🔒MFA for Console Access

Protects logons to the Admin UI and StrongDM client. Users must have a registered MFA device. If SSO is already enabled, it takes precedence and MFA applies only to policies.

📋MFA for Policies

When StrongDM policies are enabled, MFA can be configured as a requirement under the "With" statement in policy rules—triggered by specific resources, actions, or contextual attributes (location, device trust).

MFA Decision Flow
🔑
Logon
🛡️
MFA Check
Access Granted
Supported MFA Providers
🔵Duo

3rd-party provider requiring a full Duo environment setup.

🟡Okta

3rd-party provider requiring an Okta environment setup.

⏱️TOTP

Built-in StrongDM feature. No extra environment needed. Works with Google Authenticator, Authy, etc.

⚠ Important Note

If SSO is already enabled, it takes precedence over MFA for console logons. In that scenario, MFA is only available for use within Policies.

MFA Policy Use Cases
📌 Example policy use cases for MFA
ScenarioWhat it does
Specific resource accessAllow dev access to non-critical resources without MFA, but require MFA for production
Data mutation actionsView Postgres data freely, but require MFA for DELETE or UPDATE operations
Geographic accessBlock users outside North America by default, but allow them if they pass MFA
Device trustRequire MFA when connecting from untrusted hosts (kiosks, shared machines)
Enabling MFA

Navigate to Settings → Security in the StrongDM console. Select your provider (Duo, Okta, or TOTP) and save. Users will be warned they must enroll a device before they can log in again.

08

Leased Credentials & Identity Aliases

🔐Last-Mile Credential Injection

StrongDM Gateways/Relays inject credentials during the "last-mile" hop to the resource. Sensitive credentials are never accessible to users and never transferred in plaintext. Credentials are unlocked only when a cryptographically valid proxy instance requests decryption on behalf of a cryptographically valid user session—neither alone is sufficient.

Credential Flow
👤
User
StrongDM
Client
Gateway /
Relay
injects creds ↓
Resource
🔷 Credential Leasing

The Gateway/Relay uses the credentials configured when the resource was added to StrongDM (stored in a Secret Store). All connections from the Gateway/Relay use this shared identity.

Audit implication

Logs on the resource host reflect the leased (shared) identity, not the individual user's StrongDM identity. StrongDM's own session logs, however, still track the individual user.

🔷 Identity Aliases

Identity Aliases authenticate to the resource using the user's own credentials. Actions are attributed to the individual alias—providing per-user auditability at the resource level.

  • Configured per user; each user can have multiple aliases
  • Resources using Identity Aliases specify an Identity Set
  • Does not use a Secret Store
Supported resource types for Identity Aliases:
AKS cluster AWS Management Console EKS cluster GKE cluster Kubernetes cluster RDP (Cert Based) SSH (Cert Based)
PropertyCredential LeasingIdentity Aliases
Who logs in to resourceShared service accountUser's individual alias
Resource log attributionShared identityIndividual alias
Uses Secret StoreYesNo
Resource typesMost resource typesSpecific types only (SSH cert, RDP cert, K8s, AWS)
QUIZ

Knowledge Check

📝 Question 1 of 4
When a user connects to a resource via StrongDM, what identity does the resource's own logs reflect when using credential leasing?
A
The user's StrongDM email address
B
The shared credential configured on the resource in StrongDM
C
The Gateway/Relay's node token
D
Anonymous / no identity
✅ Correct! With credential leasing, the Gateway/Relay logs in to the resource using the shared service credential set up in StrongDM. The resource's native logs show that identity—not the end user's. StrongDM's own audit trail still captures the individual user session.
📝 Question 2 of 4
Which MFA provider is available out-of-the-box in StrongDM without needing to provision a separate external environment?
A
Duo
B
Okta
C
TOTP (Time-based One-Time Password)
D
Microsoft Authenticator
✅ Correct! TOTP is a StrongDM-native feature that works with any standard authenticator app (Google Authenticator, Authy, etc.) and requires no external environment provisioning.
📝 Question 3 of 4
A StrongDM tenant has SSO (Single Sign-On) already enabled. An administrator wants to enforce MFA at login. What actually happens?
A
MFA is enforced at login in addition to SSO
B
SSO takes precedence; MFA is only available for use within Policies
C
SSO is disabled and replaced by MFA
D
The administrator is blocked from enabling MFA
✅ Correct! When SSO is enabled, it takes precedence over MFA for console logons. MFA is still available—but only within StrongDM Policy configurations (e.g., requiring MFA to access certain resources or perform specific actions).
📝 Question 4 of 4
What is the primary difference between a Native StrongDM user and a Provisioned user?
A
Provisioned users cannot be assigned to Roles
B
Native users can use MFA; provisioned users cannot
C
Provisioned users cannot be modified within StrongDM—they must be managed in the external identity system that created them
D
Native users require SSO; provisioned users use a password
✅ Correct! Provisioned users are created and managed externally (e.g., Okta, Azure AD) and synced to StrongDM. Changes must be made at the source—not within StrongDM. Both user types work the same way once inside StrongDM and can be assigned to Roles.
🎉

Module Complete!

You've finished the StrongDM 201 Authentication training guide. Review any sections by scrolling up or using the sidebar navigation.