A Client in FerrisKey represents an application that relies on FerrisKey, for authentication and access control.
Think of a Client as any application or service that needs to identify users, verify who they are, and decide what they are allowed to do without managing credentials itself.
A Client is an application registered inside a Realm that delegates identity management to FerrisKey.
A Client provides:
A Client establishes a trust relationship with FerrisKey.
This means:
Each client is scoped to a single Realm:
This ensures:
Clients rely on FerrisKey for login using a standardized flow:
From the user's perspective:
Once authenticated, FerrisKey provides secure tokens to the Client.
These tokens allow the application to:
Important points for clients:
Clients never need to manage sessions themselves ; FerrisKey does it for them.
Examples:
Characteristics:
Examples:
Characteristics:
Examples:
Characteristics:
Each Client can define:
This allows applications to:
Clients rely on FerrisKey to determine:
Access rules are enforced centrally, ensuring:
Clients are isolated from one another:
This ensures that one application cannot compromise another.
A single application relying on FerrisKey:
Organizations often have:
Each application is separate Client, sharing:
For SaaS providers:
Create one CLient per applications: