Identify Provider
An identify provider is a central system that checks who a user is before login. You set up an identify provider by linking your user directory to your apps. Engineering teams use this setup to keep all user accounts in one place. One person leaves the company, and the admin turns off one account. Every linked tool blocks that person right away. Still, teams often map directory groups to broad admin roles inside target systems. Once a user logs in, they hold far too much power. How to set up
K8s Encryption Provider Config: the complete guide
Architecture patterns, implementation strategies, and security best practices. Delivered to your inbox.
An identify provider is a central system that checks who a user is before login. You set up an identify provider by linking your user directory to your apps.
Engineering teams use this setup to keep all user accounts in one place. One person leaves the company, and the admin turns off one account. Every linked tool blocks that person right away. Still, teams often map directory groups to broad admin roles inside target systems. Once a user logs in, they hold far too much power.
How to set up an identify provider for your team
The workflow starts when you build a central directory of people and groups. First, you add each person to the directory and require multi-factor checks. Next, you link your cloud platforms and internal apps using standard login protocols. These protocols include OIDC and SAML, which pass signed login claims between systems.
When an engineer tries to log in, the app sends them to the central login page. The central system checks their password and asks for a second factor. After the check passes, the system builds a signed claim with their group names. The app reads that signed claim and maps the group to a local role.
Admins create groups based on job titles, such as backend devs or data analysts. Then they write rules in the cloud platform that match those group names. A backend dev group maps to a role that can read and write databases. This avoids creating separate passwords inside every single database and server.
What native login setup solves and what it misses
A central login tool solves account sprawl across your company. You no longer have old passwords sitting on dozens of servers after someone quits. You also get a single log of every login attempt and multi-factor check. Security teams can see who signed in and when the session started.
Yet this setup only decides who can open the front door. It knows nothing about what the user does after the session begins. Once a group maps to a database role, the user has full role power. They can run any query or command that the local role allows.
K8s Encryption Provider Config: architecture patterns and best practices
Continue reading? Get the full guide.
Free. No spam. Unsubscribe anytime.
This creates a big risk during daily support work and bug fixes. An engineer might need to check one row in a production table. Because their group maps to a broad role, they can read the whole table. If they run a bad update statement, the login tool cannot stop it.
Static group mapping also forces teams to hand out standing permissions. People keep write roles all week even if they only need them once. Also, the login tool cannot see raw data returning from a query. If a table holds phone numbers, card numbers, or emails, those fields return in plain text. Masking rewrites matched fields in results, which a login system cannot do on its own.
Why teams separate login checks from live session controls
Login systems handle user directories, password rules, and device checks very well. They were built to verify a person at the start of a work day. They were not built to read database queries or server commands in flight.
To close this gap, teams pair central login with controls at the command level. Instead of granting standing database roles to groups, they approve single tasks. They also apply masking rules so queries rewrite emails and national IDs in results. This keeps login simple while protecting live production data from mistakes.
Govern statements and responses across databases and APIs
Good config and scoped roles are needed setup. They do not check single queries in flight or mask sensitive fields in returned rows. Across Postgres, MySQL, SQL Server, MongoDB, ClickHouse, Kubernetes APIs, SSH, and internal HTTP endpoints, hoop.dev runs beside each supported service as an open-source proxy, a sidecar for your database or API.
First, hoop.dev guardrails block banned queries before they run. Then hoop.dev data masking rewrites matched sensitive values in responses in memory. The audit trail records every statement and verdict per resource. Furthermore, hoop.dev holds SOC 2 Type II and is open source on GitHub.
Frequently asked questions
What is the difference between an identify provider and a directory?
A directory stores the list of user accounts, passwords, and group names. The login system uses that directory to check users and send signed claims to apps.
Should I use OIDC or SAML when linking my apps?
Both protocols pass signed login claims safely between your central login system and your apps. OIDC is newer and works well with modern web and mobile tools, while older apps often use SAML.
Can my login system block a bad SQL query?
No, a login system only checks who you are when you first sign in. It does not inspect or block SQL queries, shell commands, or API calls during a session.
Related guides
In this post