@btravstack/http-server / oidc-tokens
oidc-tokens
Classes
OidcTokens
Defined in: packages/http-server/src/oidc-token-store.ts:92
The default delegated-login capability; another login may declare its own port of the same type.
Extends
PortInstance<"HttpOidcTokens",OidcTokensService>
Constructors
Constructor
new OidcTokens(): OidcTokens;Defined in: packages/di/dist/index.d.mts:15
Returns
Inherited from
Port("HttpOidcTokens")<OidcTokensService>.constructor
Properties
| Property | Modifier | Type | Inherited from | Defined in |
|---|---|---|---|---|
[ID] | readonly | "HttpOidcTokens" | Port("HttpOidcTokens").[ID] | packages/di/dist/index.d.mts:11 |
[SERVICE] | readonly | OidcTokensService | Port("HttpOidcTokens").[SERVICE] | packages/di/dist/index.d.mts:12 |
portId | static readonly | "HttpOidcTokens" | Port("HttpOidcTokens").portId | packages/di/dist/index.d.mts:16 |
OidcTokenStore
Defined in: packages/http-server/src/oidc-token-store.ts:48
Server-side OIDC credentials; no in-process production adapter is supplied.
Extends
PortInstance<"HttpOidcTokenStore",OidcTokenStoreService>
Constructors
Constructor
new OidcTokenStore(): OidcTokenStore;Defined in: packages/di/dist/index.d.mts:15
Returns
Inherited from
Port("HttpOidcTokenStore")<OidcTokenStoreService>.constructor
Properties
| Property | Modifier | Type | Inherited from | Defined in |
|---|---|---|---|---|
[ID] | readonly | "HttpOidcTokenStore" | Port("HttpOidcTokenStore").[ID] | packages/di/dist/index.d.mts:11 |
[SERVICE] | readonly | OidcTokenStoreService | Port("HttpOidcTokenStore").[SERVICE] | packages/di/dist/index.d.mts:12 |
portId | static readonly | "HttpOidcTokenStore" | Port("HttpOidcTokenStore").portId | packages/di/dist/index.d.mts:16 |
OidcTokenStoreUnavailable
Defined in: packages/http-server/src/oidc-token-store.ts:8
A storage failure, without credentials or driver diagnostics.
Extends
TaggedErrorInstance<"OidcTokenStoreUnavailable", { }>
Constructors
Constructor
new OidcTokenStoreUnavailable(args): OidcTokenStoreUnavailable;Defined in: node_modules/.pnpm/unthrown@5.12.1/node_modules/unthrown/dist/index.d.mts:2386
Parameters
| Parameter | Type |
|---|---|
args | void |
Returns
Inherited from
TaggedError("OidcTokenStoreUnavailable").constructor
Properties
Type Aliases
OidcLogoutContext
type OidcLogoutContext = object;Defined in: packages/http-server/src/oidc-token-store.ts:60
A validated login's provider logout hint; never session principal or cookie data.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
idToken | readonly | string | packages/http-server/src/oidc-token-store.ts:61 |
OidcTokenResponse
type OidcTokenResponse = object;Defined in: packages/http-server/src/oidc-token-store.ts:51
Token endpoint fields retained only in protected server-side storage.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
access_token | readonly | string | packages/http-server/src/oidc-token-store.ts:52 |
expires_in? | readonly | number | packages/http-server/src/oidc-token-store.ts:54 |
id_token? | readonly | string | packages/http-server/src/oidc-token-store.ts:56 |
refresh_token? | readonly | string | packages/http-server/src/oidc-token-store.ts:55 |
token_type | readonly | string | packages/http-server/src/oidc-token-store.ts:53 |
OidcTokensOptions
type OidcTokensOptions = object;Defined in: packages/http-server/src/oidc-tokens.ts:59
One token manager's deployment configuration. port names a second login's capability.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
allowInsecureIssuer? | readonly | boolean | packages/http-server/src/oidc-tokens.ts:65 |
clientId? | readonly | string | packages/http-server/src/oidc-tokens.ts:61 |
clientSecret? | readonly | string | packages/http-server/src/oidc-tokens.ts:62 |
clock? | readonly | Clock | packages/http-server/src/oidc-tokens.ts:66 |
issuer? | readonly | string | packages/http-server/src/oidc-tokens.ts:60 |
port? | readonly | PortClassOf<string, OidcTokensService> | packages/http-server/src/oidc-tokens.ts:64 |
variablePrefix? | readonly | string | packages/http-server/src/oidc-tokens.ts:63 |
OidcTokensService
type OidcTokensService = object;Defined in: packages/http-server/src/oidc-token-store.ts:70
One login's server-only capability. Framework adapters pass the raw __Host-session cookie, never a reference supplied in a URL or form. session validates revocation without refreshing; accessToken refreshes under the store's shared lock. invalidate deletes before returning success.
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
accessToken | readonly | (cookie) => AsyncResult<string, | Unauthenticated | OidcTokenStoreUnavailable> | - | packages/http-server/src/oidc-token-store.ts:81 |
clientId | readonly | string | - | packages/http-server/src/oidc-token-store.ts:72 |
create | readonly | (session, subject, tokens) => AsyncResult<string, | Unauthenticated | OidcTokenStoreUnavailable> | - | packages/http-server/src/oidc-token-store.ts:73 |
invalidate | readonly | (cookie) => AsyncResult<void, OidcTokenStoreUnavailable> | - | packages/http-server/src/oidc-token-store.ts:84 |
issuer | readonly | string | - | packages/http-server/src/oidc-token-store.ts:71 |
logout | readonly | (cookie) => AsyncResult<OidcLogoutContext | undefined, OidcTokenStoreUnavailable> | Deletes credentials and returns their bound logout hint in the same store transaction. | packages/http-server/src/oidc-token-store.ts:86 |
session | readonly | (cookie) => AsyncResult<Session<unknown> | undefined, OidcTokenStoreUnavailable> | - | packages/http-server/src/oidc-token-store.ts:78 |
OidcTokenStoreService
type OidcTokenStoreService = object;Defined in: packages/http-server/src/oidc-token-store.ts:36
Application-supplied shared storage. create must refuse an existing reference. transact holds exclusive ownership across ALL replicas until work settles and its replacement commits. Missing records must be locked too; deletion, refresh and invalidation use this same boundary. A defect commits nothing. A lease that expires must fence the old writer rather than allow it to recreate a deleted row.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
create | readonly | (reference, record) => AsyncResult<void, OidcTokenStoreUnavailable> | packages/http-server/src/oidc-token-store.ts:37 |
transact | readonly | <T>(reference, work) => AsyncResult<T, OidcTokenStoreUnavailable> | packages/http-server/src/oidc-token-store.ts:41 |
OidcTokenUpdate
type OidcTokenUpdate<T> = object;Defined in: packages/http-server/src/oidc-token-store.ts:24
An atomic replacement. undefined deletes the record, and value is returned to the caller.
Type Parameters
| Type Parameter |
|---|
T |
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
record | readonly | StoredOidcTokens | undefined | packages/http-server/src/oidc-token-store.ts:25 |
value | readonly | T | packages/http-server/src/oidc-token-store.ts:26 |
StoredOidcTokens
type StoredOidcTokens = object;Defined in: packages/http-server/src/oidc-token-store.ts:11
Server-only credentials. Adapters must protect these at rest and expire the row at sessionExpiresAt.
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
accessExpiresAt | readonly | number | packages/http-server/src/oidc-token-store.ts:18 |
accessToken | readonly | string | packages/http-server/src/oidc-token-store.ts:15 |
clientId | readonly | string | packages/http-server/src/oidc-token-store.ts:13 |
idToken? | readonly | string | packages/http-server/src/oidc-token-store.ts:17 |
issuer | readonly | string | packages/http-server/src/oidc-token-store.ts:12 |
refreshAfter | readonly | number | packages/http-server/src/oidc-token-store.ts:19 |
refreshToken? | readonly | string | packages/http-server/src/oidc-token-store.ts:16 |
sessionExpiresAt | readonly | number | packages/http-server/src/oidc-token-store.ts:20 |
subject | readonly | string | packages/http-server/src/oidc-token-store.ts:14 |
Functions
createOidcTokens()
function createOidcTokens(
configuration,
codec,
store,
observers,
clock,
binding
): OidcTokensService;Defined in: packages/http-server/src/oidc-tokens.ts:146
Framework-neutral factory over already-discovered client configuration. The binding must name that client's issuer and client ID. No HTTP listener is needed.
Parameters
| Parameter | Type |
|---|---|
configuration | Configuration |
codec | SessionCodecService |
store | OidcTokenStoreService |
observers | readonly ((operation) => Settle)[] |
clock | Clock |
binding | { clientId: string; issuer: string; } |
binding.clientId | string |
binding.issuer | string |
Returns
oidcTokens()
function oidcTokens<O>(options?): Provider<InstanceType<TokensPort<O>>, ConfigInvalid | OidcUnreachable,
| SessionCodec
| Observers
| TokenEnvironment<O>
| OidcTokenStore> & object;Defined in: packages/http-server/src/oidc-tokens.ts:90
Bind a server-only token manager to a shared store and the existing session codec. Discovery runs once per manager. Compose this beside oidc({ tokens: provider.port }) and sessionAuthenticator({ tokens: provider.port }).
Type Parameters
| Type Parameter | Default type |
|---|---|
O extends OidcTokensOptions | Record<never, never> |
Parameters
| Parameter | Type |
|---|---|
options? | O & OptionsAs<O, OidcTokensOptions> |
Returns
Provider<InstanceType<TokensPort<O>>, ConfigInvalid | OidcUnreachable, | SessionCodec | Observers | TokenEnvironment<O> | OidcTokenStore> & object