🧪 Beta — Available today; the interface contract may still change.
Integrate with your existing authentication
You do not need to replace your existing identity system.
That is the one question this page answers. The biggest concern in an enterprise identity purchase is never "does it have this feature" — it is "our last IAM rollout took two years, please do not ask us to start over". GenAuth's position is a layer on top of your existing Human IAM: users stay in your directory, sign-in stays in your flow, and the only thing that changes is where an agent gets its authority from.
By the end of this guide you will be able to:
- Decide which path fits your situation
- Know what you configure and what we handle for each path
- Understand the security boundary and cost of each
Two paths — pick one first
| Path A: OIDC federation | Path B: server-side trust | |
|---|---|---|
| In one line | The user authenticates and consents on the sign-in page they already know | The user is already signed in to your app, and your server starts the delegation in the organization's name |
| User experience | One redirect (to your IdP sign-in → consent page) | No redirect; nothing extra for the user to do |
| Who consents | The end user, personally | The organization (an administrator consented in advance) |
| You need | An OIDC-capable identity provider | A trustworthy server-side sign-in system |
| Fits | Personal data and actions where the user must be informed | Background jobs, batch processing, first-party apps with a mature sign-in system |
| Main cost | An interactive round trip; the user must be present | The key is the authority; hardening requirements are high |
When you cannot decide: would it be inappropriate for the user to learn about this authorization only afterwards? If yes, take path A. If not (nightly reconciliation, for example), take path B.
Path A: OIDC federation
What it solves
Authority over user identity stays with your IdP. GenAuth no longer keeps its own copy of users — at consent time it sends the user back to your sign-in page, so the user sees the interface they already know, and returns to the consent page to decide once authenticated.
Two things get wired at once:
- Identity federation: who the user is (
subpoints at that person in your directory) - Permission read: what the user can do (this sets the upper bound of the delegation — the "the person's real permissions" term in the three-way intersection)
What you configure
- Register an OIDC client for GenAuth in your IdP (authorization code flow) and configure the callback address
- Decide the scope and claim mapping: GenAuth needs a stable unique user identifier
- Configure the provider connection on the GenAuth side (currently supported and planned providers: Integration principles)
- Verify: run one complete interactive delegation (see Quickstart) and confirm the user on the consent page is the one in your directory
Boundaries
- Your IdP is the identity authority; GenAuth neither copies nor takes over your user directory
- Once a user is disabled or offboarded in your IdP, subsequent consent naturally fails
- The exact shape of permission read depends on provider capability (see Integration principles)
Path B: server-side trust
What it solves
Your application already knows who is using it — the user just signed in to your system. Sending them off to another consent page is redundant for the experience, and product stakeholders may simply veto it.
On this path, an administrator consents in advance in the organization's name: "agents of this class in this organization may execute these scopes for this organization's users". After that your server, holding the access key, starts delegations directly with no per-use confirmation from the user.
// Your server has already established the signed-in user; start the delegation directly
const { data: grant } = await anima.delegateToken({
agent: "report-agent",
scopes: [AnimaScopes.WEB_SEARCH_RUN], // minimum set
user: { id: currentUser.id }, // from your own session
expiresIn: 900, // 15 minutes, sized to the task
});What you must do (not optional)
This path is equivalent to authorizing in the organization's name
Whoever holds the access key can start delegations for users in the organization. A leaked access key is an organization-level risk. Before adopting it, put these in place:
- The key exists only in a controlled server-side environment (a secret manager or environment variables) — never in a client, a log, or a front-end build artifact
- The key's
allowedScopes/allowedAgentsare set to the minimum — this is the first gate on delegation - Lifetimes are sized to the task (minutes), not set to the maximum
- A dedicated key per agent, so an incident means disabling one key
- Alerting on key usage: unexpected hours, unexpected origins, abnormal frequency
Full hard-constraint checklist and threat analysis: Security considerations.
Boundaries
- The user receives no per-use confirmation, so you have an obligation to tell them in-product which agents are acting on their behalf — we recommend a "my authorizations" page (see Audit and compliance reporting)
- The authorization is still revocable and auditable; the artifact is the same delegate token as in path A
- Not suitable for consumer-facing informed-consent scenarios
The two paths can coexist
A common mature combination: internal tools take path B (employees are already signed in, experience wins), customer-facing features take path A (the customer must be informed personally). Both share one agent inventory, one audit chain and one set of recall mechanisms — switching paths requires no change on the agent side, only different parameters when starting the delegation.
FAQ
Our sign-in system is homegrown, not standard OIDC. Can we integrate? Two options: add a standard OIDC layer to it (better long-term), or start with path B (an existing server-side session is all you need).
Can we avoid both replacing our IdP and getting administrator consent? No. Authorization must have someone accountable — either the user personally or the organization. This is not a product limitation; it is what delegation semantics require (see Consent and approval).
Can multiple Human Identity providers be connected at once? The architecture is designed around a provider abstraction; see Integration principles for current support.
Next steps
- Integration principles: how OIDC and OAuth scope connect — the provider abstraction and support matrix.
- Consent and approval — the authorization semantics behind both paths.
- Security considerations — the hard-constraint checklist for path B.