{{define "content"}}
The API that manages dex itself. It is a separate endpoint from the OpenID Connect one, and tokens from that one do not authenticate against it.
{{.Notice}}
{{end}} {{if .Error}}{{.Error}}
{{end}}This app was started without a gRPC address, so it has nothing to talk to. Two things are needed.
grpc: addr: 127.0.0.1:5557Plaintext is fine on a loopback address; add tlsCert, tlsKey and tlsClientCA for anything else.
--grpc-addr 127.0.0.1:5557With certificates: --grpc-ca, --grpc-client-cert and --grpc-client-key.
| ID | Name | Redirects | |
|---|---|---|---|
| {{.ID}}{{if .Public}} public{{end}} | {{.Name}} | {{len .RedirectURIs}} |
ListClients returns nothing. Clients from a static config are not stored, and so are not listed.
{{end}} {{if not .Mode}} {{end}} {{if eq .Mode "create"}}| Username | User ID | ||
|---|---|---|---|
| {{.Email}} | {{.Username}} | {{.UserID}} |
ListPasswords returns nothing. Users from staticPasswords are not stored, and so are not listed.
{{end}} {{if not .Mode}} {{end}} {{if eq .Mode "create"}}| ID | Type | Name | |
|---|---|---|---|
| {{.ID}} | {{.Type}} | {{.Name}} |
ListConnectors returns nothing. Connectors from the config file are not stored, and so are not listed.
{{end}} {{if not .Mode}} {{end}} {{if eq .Mode "terminate"}}| User | Connector | Groups | MFA | |
|---|---|---|---|---|
|
{{if .Email}}{{.Email}}{{else}}{{.UserID}}{{end}}
{{.UserID}}
|
{{.ConnectorID}} | {{len .Groups}} | {{len .MFADevices}} |
Counts rather than contents: a user with forty groups would otherwise be the whole table. Everything about one — claims, consents, factors — is on its page.
{{else}}
ListUserIdentities returns nothing. An identity appears once someone signs
in through a connector — and the method itself needs dex started with
DEX_API_SESSIONS_IDENTITIES_CRUD=true.
What dex reports about itself through GetDiscovery.
| {{.Name}} | {{.Value}} |
| {{.Name}} | {{range .Values}}{{.}} {{end}} |
Pick a user from the Users tab, or name one here. Sessions are keyed by the
ID the connector gave the user; refresh tokens by the sub claim, which the
app derives from that ID and the connector. Listing sessions needs dex
started with DEX_API_SESSIONS_IDENTITIES_CRUD=true.
| Session | Connector | From | Device | Started | Expires | |
|---|---|---|---|---|---|---|
| {{.ID}} | {{.ConnectorID}} | {{.IPAddress}} | {{.UserAgent}} | {{.Created}} | {{.Expires}} |
|
No sessions for this user.
{{end}} {{end}} {{if and .UserID .ConnectorID}}| Client | Created | Last used | |
|---|---|---|---|
| {{.ClientID}} | {{.Created}} | {{.LastUsed}} |
|
Revoke one, then let this app refresh: the sign-in ends. That is the pair worth trying together.
{{else}}No refresh tokens for this user. They are issued only when offline_access is requested.
{{end}} {{end}} {{if .UserID}}