@fusionauth/typescript-client 1.39.0 → 1.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/FusionAuthClient.d.ts +536 -1
- package/build/src/FusionAuthClient.js +276 -0
- package/build/src/FusionAuthClient.js.map +1 -1
- package/dist/fusionauth-typescript-client.js +277 -1
- package/dist/fusionauth-typescript-client.min.js +1 -1
- package/dist/fusionauth-typescript-client.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -108,6 +108,15 @@ export declare class FusionAuthClient {
|
|
|
108
108
|
* @returns {Promise<ClientResponse<void>>}
|
|
109
109
|
*/
|
|
110
110
|
checkChangePasswordUsingLoginId(loginId: string): Promise<ClientResponse<void>>;
|
|
111
|
+
/**
|
|
112
|
+
* Make a Client Credentials grant request to obtain an access token.
|
|
113
|
+
*
|
|
114
|
+
* @param {string} client_id The client identifier. The client Id is the Id of the FusionAuth Entity in which you are attempting to authenticate.
|
|
115
|
+
* @param {string} client_secret The client secret used to authenticate this request.
|
|
116
|
+
* @param {string} scope (Optional) This parameter is used to indicate which target entity you are requesting access. To request access to an entity, use the format target-entity:<target-entity-id>:<roles>. Roles are an optional comma separated list.
|
|
117
|
+
* @returns {Promise<ClientResponse<AccessToken>>}
|
|
118
|
+
*/
|
|
119
|
+
clientCredentialsGrant(client_id: string, client_secret: string, scope: string): Promise<ClientResponse<AccessToken>>;
|
|
111
120
|
/**
|
|
112
121
|
* Adds a comment to the user's account.
|
|
113
122
|
*
|
|
@@ -115,6 +124,27 @@ export declare class FusionAuthClient {
|
|
|
115
124
|
* @returns {Promise<ClientResponse<void>>}
|
|
116
125
|
*/
|
|
117
126
|
commentOnUser(request: UserCommentRequest): Promise<ClientResponse<void>>;
|
|
127
|
+
/**
|
|
128
|
+
* Complete a WebAuthn authentication ceremony by validating the signature against the previously generated challenge without logging the user in
|
|
129
|
+
*
|
|
130
|
+
* @param {WebAuthnLoginRequest} request An object containing data necessary for completing the authentication ceremony
|
|
131
|
+
* @returns {Promise<ClientResponse<WebAuthnAssertResponse>>}
|
|
132
|
+
*/
|
|
133
|
+
completeWebAuthnAssertion(request: WebAuthnLoginRequest): Promise<ClientResponse<WebAuthnAssertResponse>>;
|
|
134
|
+
/**
|
|
135
|
+
* Complete a WebAuthn authentication ceremony by validating the signature against the previously generated challenge and then login the user in
|
|
136
|
+
*
|
|
137
|
+
* @param {WebAuthnLoginRequest} request An object containing data necessary for completing the authentication ceremony
|
|
138
|
+
* @returns {Promise<ClientResponse<LoginResponse>>}
|
|
139
|
+
*/
|
|
140
|
+
completeWebAuthnLogin(request: WebAuthnLoginRequest): Promise<ClientResponse<LoginResponse>>;
|
|
141
|
+
/**
|
|
142
|
+
* Complete a WebAuthn registration ceremony by validating the client request and saving the new credential
|
|
143
|
+
*
|
|
144
|
+
* @param {WebAuthnRegisterCompleteRequest} request An object containing data necessary for completing the registration ceremony
|
|
145
|
+
* @returns {Promise<ClientResponse<WebAuthnRegisterCompleteResponse>>}
|
|
146
|
+
*/
|
|
147
|
+
completeWebAuthnRegistration(request: WebAuthnRegisterCompleteRequest): Promise<ClientResponse<WebAuthnRegisterCompleteResponse>>;
|
|
118
148
|
/**
|
|
119
149
|
* Creates an API key. You can optionally specify a unique Id for the key, if not provided one will be generated.
|
|
120
150
|
* an API key can only be created with equal or lesser authority. An API key cannot create another API key unless it is granted
|
|
@@ -655,6 +685,13 @@ export declare class FusionAuthClient {
|
|
|
655
685
|
* @returns {Promise<ClientResponse<UserDeleteResponse>>}
|
|
656
686
|
*/
|
|
657
687
|
deleteUsersByQuery(request: UserDeleteRequest): Promise<ClientResponse<UserDeleteResponse>>;
|
|
688
|
+
/**
|
|
689
|
+
* Deletes the WebAuthn credential for the given Id.
|
|
690
|
+
*
|
|
691
|
+
* @param {UUID} id The Id of the WebAuthn credential to delete.
|
|
692
|
+
* @returns {Promise<ClientResponse<void>>}
|
|
693
|
+
*/
|
|
694
|
+
deleteWebAuthnCredential(id: UUID): Promise<ClientResponse<void>>;
|
|
658
695
|
/**
|
|
659
696
|
* Deletes the webhook for the given Id.
|
|
660
697
|
*
|
|
@@ -843,6 +880,13 @@ export declare class FusionAuthClient {
|
|
|
843
880
|
* @returns {Promise<ClientResponse<void>>}
|
|
844
881
|
*/
|
|
845
882
|
importUsers(request: ImportRequest): Promise<ClientResponse<void>>;
|
|
883
|
+
/**
|
|
884
|
+
* Import a WebAuthn credential
|
|
885
|
+
*
|
|
886
|
+
* @param {WebAuthnCredentialImportRequest} request An object containing data necessary for importing the credential
|
|
887
|
+
* @returns {Promise<ClientResponse<void>>}
|
|
888
|
+
*/
|
|
889
|
+
importWebAuthnCredential(request: WebAuthnCredentialImportRequest): Promise<ClientResponse<void>>;
|
|
846
890
|
/**
|
|
847
891
|
* Inspect an access token issued by FusionAuth.
|
|
848
892
|
*
|
|
@@ -1903,6 +1947,20 @@ export declare class FusionAuthClient {
|
|
|
1903
1947
|
* @returns {Promise<ClientResponse<VersionResponse>>}
|
|
1904
1948
|
*/
|
|
1905
1949
|
retrieveVersion(): Promise<ClientResponse<VersionResponse>>;
|
|
1950
|
+
/**
|
|
1951
|
+
* Retrieves the WebAuthn credential for the given Id.
|
|
1952
|
+
*
|
|
1953
|
+
* @param {UUID} id The Id of the WebAuthn credential.
|
|
1954
|
+
* @returns {Promise<ClientResponse<WebAuthnCredentialResponse>>}
|
|
1955
|
+
*/
|
|
1956
|
+
retrieveWebAuthnCredential(id: UUID): Promise<ClientResponse<WebAuthnCredentialResponse>>;
|
|
1957
|
+
/**
|
|
1958
|
+
* Retrieves all WebAuthn credentials for the given user.
|
|
1959
|
+
*
|
|
1960
|
+
* @param {UUID} userId The user's ID.
|
|
1961
|
+
* @returns {Promise<ClientResponse<WebAuthnCredentialResponse>>}
|
|
1962
|
+
*/
|
|
1963
|
+
retrieveWebAuthnCredentialsForUser(userId: UUID): Promise<ClientResponse<WebAuthnCredentialResponse>>;
|
|
1906
1964
|
/**
|
|
1907
1965
|
* Retrieves the webhook for the given Id. If you pass in null for the id, this will return all the webhooks.
|
|
1908
1966
|
*
|
|
@@ -2187,6 +2245,20 @@ export declare class FusionAuthClient {
|
|
|
2187
2245
|
* @returns {Promise<ClientResponse<TwoFactorStartResponse>>}
|
|
2188
2246
|
*/
|
|
2189
2247
|
startTwoFactorLogin(request: TwoFactorStartRequest): Promise<ClientResponse<TwoFactorStartResponse>>;
|
|
2248
|
+
/**
|
|
2249
|
+
* Start a WebAuthn authentication ceremony by generating a new challenge for the user
|
|
2250
|
+
*
|
|
2251
|
+
* @param {WebAuthnStartRequest} request An object containing data necessary for starting the authentication ceremony
|
|
2252
|
+
* @returns {Promise<ClientResponse<WebAuthnStartResponse>>}
|
|
2253
|
+
*/
|
|
2254
|
+
startWebAuthnLogin(request: WebAuthnStartRequest): Promise<ClientResponse<WebAuthnStartResponse>>;
|
|
2255
|
+
/**
|
|
2256
|
+
* Start a WebAuthn registration ceremony by generating a new challenge for the user
|
|
2257
|
+
*
|
|
2258
|
+
* @param {WebAuthnRegisterStartRequest} request An object containing data necessary for starting the registration ceremony
|
|
2259
|
+
* @returns {Promise<ClientResponse<WebAuthnRegisterStartResponse>>}
|
|
2260
|
+
*/
|
|
2261
|
+
startWebAuthnRegistration(request: WebAuthnRegisterStartRequest): Promise<ClientResponse<WebAuthnRegisterStartResponse>>;
|
|
2190
2262
|
/**
|
|
2191
2263
|
* Complete login using a 2FA challenge
|
|
2192
2264
|
*
|
|
@@ -2687,6 +2759,7 @@ export interface Application {
|
|
|
2687
2759
|
verificationEmailTemplateId?: UUID;
|
|
2688
2760
|
verificationStrategy?: VerificationStrategy;
|
|
2689
2761
|
verifyRegistration?: boolean;
|
|
2762
|
+
webAuthnConfiguration?: ApplicationWebAuthnConfiguration;
|
|
2690
2763
|
}
|
|
2691
2764
|
/**
|
|
2692
2765
|
* @author Daniel DeGroff
|
|
@@ -2710,6 +2783,13 @@ export interface ApplicationEmailConfiguration {
|
|
|
2710
2783
|
twoFactorMethodAddEmailTemplateId?: UUID;
|
|
2711
2784
|
twoFactorMethodRemoveEmailTemplateId?: UUID;
|
|
2712
2785
|
}
|
|
2786
|
+
/**
|
|
2787
|
+
* Events that are bound to applications.
|
|
2788
|
+
*
|
|
2789
|
+
* @author Brian Pontarelli
|
|
2790
|
+
*/
|
|
2791
|
+
export interface ApplicationEvent {
|
|
2792
|
+
}
|
|
2713
2793
|
/**
|
|
2714
2794
|
* @author Daniel DeGroff
|
|
2715
2795
|
*/
|
|
@@ -2789,6 +2869,20 @@ export interface ApplicationUnverifiedConfiguration {
|
|
|
2789
2869
|
verificationStrategy?: VerificationStrategy;
|
|
2790
2870
|
whenGated?: RegistrationUnverifiedOptions;
|
|
2791
2871
|
}
|
|
2872
|
+
/**
|
|
2873
|
+
* Application-level configuration for WebAuthn
|
|
2874
|
+
*
|
|
2875
|
+
* @author Daniel DeGroff
|
|
2876
|
+
*/
|
|
2877
|
+
export interface ApplicationWebAuthnConfiguration extends Enableable {
|
|
2878
|
+
bootstrapWorkflow?: ApplicationWebAuthnWorkflowConfiguration;
|
|
2879
|
+
reauthenticationWorkflow?: ApplicationWebAuthnWorkflowConfiguration;
|
|
2880
|
+
}
|
|
2881
|
+
/**
|
|
2882
|
+
* @author Daniel DeGroff
|
|
2883
|
+
*/
|
|
2884
|
+
export interface ApplicationWebAuthnWorkflowConfiguration extends Enableable {
|
|
2885
|
+
}
|
|
2792
2886
|
/**
|
|
2793
2887
|
* This class is a simple attachment with a byte array, name and MIME type.
|
|
2794
2888
|
*
|
|
@@ -2799,6 +2893,29 @@ export interface Attachment {
|
|
|
2799
2893
|
mime?: string;
|
|
2800
2894
|
name?: string;
|
|
2801
2895
|
}
|
|
2896
|
+
/**
|
|
2897
|
+
* Used to communicate whether and how authenticator attestation should be delivered to the Relying Party
|
|
2898
|
+
*
|
|
2899
|
+
* @author Spencer Witt
|
|
2900
|
+
*/
|
|
2901
|
+
export declare enum AttestationConveyancePreference {
|
|
2902
|
+
none = "none",
|
|
2903
|
+
indirect = "indirect",
|
|
2904
|
+
direct = "direct",
|
|
2905
|
+
enterprise = "enterprise"
|
|
2906
|
+
}
|
|
2907
|
+
/**
|
|
2908
|
+
* Used to indicate what type of attestation was included in the authenticator response for a given WebAuthn credential at the time it was created
|
|
2909
|
+
*
|
|
2910
|
+
* @author Spencer Witt
|
|
2911
|
+
*/
|
|
2912
|
+
export declare enum AttestationType {
|
|
2913
|
+
basic = "basic",
|
|
2914
|
+
self = "self",
|
|
2915
|
+
attestationCa = "attestationCa",
|
|
2916
|
+
anonymizationCa = "anonymizationCa",
|
|
2917
|
+
none = "none"
|
|
2918
|
+
}
|
|
2802
2919
|
/**
|
|
2803
2920
|
* An audit log.
|
|
2804
2921
|
*
|
|
@@ -2880,6 +2997,25 @@ export declare enum AuthenticationThreats {
|
|
|
2880
2997
|
}
|
|
2881
2998
|
export interface AuthenticationTokenConfiguration extends Enableable {
|
|
2882
2999
|
}
|
|
3000
|
+
/**
|
|
3001
|
+
* Describes the <a href="https://www.w3.org/TR/webauthn-2/#authenticator-attachment-modality">authenticator attachment modality</a>.
|
|
3002
|
+
*
|
|
3003
|
+
* @author Spencer Witt
|
|
3004
|
+
*/
|
|
3005
|
+
export declare enum AuthenticatorAttachment {
|
|
3006
|
+
platform = "platform",
|
|
3007
|
+
crossPlatform = "crossPlatform"
|
|
3008
|
+
}
|
|
3009
|
+
/**
|
|
3010
|
+
* Describes the authenticator attachment modality preference for a WebAuthn workflow. See {@link AuthenticatorAttachment}
|
|
3011
|
+
*
|
|
3012
|
+
* @author Spencer Witt
|
|
3013
|
+
*/
|
|
3014
|
+
export declare enum AuthenticatorAttachmentPreference {
|
|
3015
|
+
any = "any",
|
|
3016
|
+
platform = "platform",
|
|
3017
|
+
crossPlatform = "crossPlatform"
|
|
3018
|
+
}
|
|
2883
3019
|
/**
|
|
2884
3020
|
* @author Daniel DeGroff
|
|
2885
3021
|
*/
|
|
@@ -2888,6 +3024,18 @@ export interface AuthenticatorConfiguration {
|
|
|
2888
3024
|
codeLength?: number;
|
|
2889
3025
|
timeStep?: number;
|
|
2890
3026
|
}
|
|
3027
|
+
/**
|
|
3028
|
+
* Used by the Relying Party to specify their requirements for authenticator attributes. Fields use the deprecated "resident key" terminology to refer
|
|
3029
|
+
* to client-side discoverable credentials to maintain backwards compatibility with WebAuthn Level 1.
|
|
3030
|
+
*
|
|
3031
|
+
* @author Spencer Witt
|
|
3032
|
+
*/
|
|
3033
|
+
export interface AuthenticatorSelectionCriteria {
|
|
3034
|
+
authenticatorAttachment?: AuthenticatorAttachment;
|
|
3035
|
+
requireResidentKey?: boolean;
|
|
3036
|
+
residentKey?: ResidentKeyRequirement;
|
|
3037
|
+
userVerification?: UserVerificationRequirement;
|
|
3038
|
+
}
|
|
2891
3039
|
export interface BaseConnectorConfiguration {
|
|
2892
3040
|
data?: Record<string, any>;
|
|
2893
3041
|
debug?: boolean;
|
|
@@ -3202,6 +3350,51 @@ export interface CORSConfiguration extends Enableable {
|
|
|
3202
3350
|
exposedHeaders?: Array<string>;
|
|
3203
3351
|
preflightMaxAgeInSeconds?: number;
|
|
3204
3352
|
}
|
|
3353
|
+
/**
|
|
3354
|
+
* A number identifying a cryptographic algorithm. Values should be registered with the <a
|
|
3355
|
+
* href="https://www.iana.org/assignments/cose/cose.xhtml#algorithms">IANA COSE Algorithms registry</a>
|
|
3356
|
+
*
|
|
3357
|
+
* @author Spencer Witt
|
|
3358
|
+
*/
|
|
3359
|
+
export declare enum CoseAlgorithmIdentifier {
|
|
3360
|
+
ES256 = "SHA256withECDSA",
|
|
3361
|
+
ES384 = "SHA384withECDSA",
|
|
3362
|
+
ES512 = "SHA512withECDSA",
|
|
3363
|
+
RS256 = "SHA256withRSA",
|
|
3364
|
+
RS384 = "SHA384withRSA",
|
|
3365
|
+
RS512 = "SHA512withRSA",
|
|
3366
|
+
PS256 = "SHA-256",
|
|
3367
|
+
PS384 = "SHA-384",
|
|
3368
|
+
PS512 = "SHA-512"
|
|
3369
|
+
}
|
|
3370
|
+
/**
|
|
3371
|
+
* COSE Elliptic Curve identifier to determine which elliptic curve to use with a given key
|
|
3372
|
+
*
|
|
3373
|
+
* @author Spencer Witt
|
|
3374
|
+
*/
|
|
3375
|
+
export declare enum CoseEllipticCurve {
|
|
3376
|
+
Reserved = "Reserved",
|
|
3377
|
+
P256 = "P256",
|
|
3378
|
+
P384 = "P384",
|
|
3379
|
+
P521 = "P521",
|
|
3380
|
+
X25519 = "X25519",
|
|
3381
|
+
X448 = "X448",
|
|
3382
|
+
Ed25519 = "Ed25519",
|
|
3383
|
+
Ed448 = "Ed448",
|
|
3384
|
+
Secp256k1 = "Secp256k1"
|
|
3385
|
+
}
|
|
3386
|
+
/**
|
|
3387
|
+
* COSE key type
|
|
3388
|
+
*
|
|
3389
|
+
* @author Spencer Witt
|
|
3390
|
+
*/
|
|
3391
|
+
export declare enum CoseKeyType {
|
|
3392
|
+
Reserved = "0",
|
|
3393
|
+
OKP = "1",
|
|
3394
|
+
EC2 = "2",
|
|
3395
|
+
RSA = "3",
|
|
3396
|
+
Symmetric = "4"
|
|
3397
|
+
}
|
|
3205
3398
|
/**
|
|
3206
3399
|
* @author Brian Pontarelli
|
|
3207
3400
|
*/
|
|
@@ -3209,6 +3402,14 @@ export interface Count {
|
|
|
3209
3402
|
count?: number;
|
|
3210
3403
|
interval?: number;
|
|
3211
3404
|
}
|
|
3405
|
+
/**
|
|
3406
|
+
* Contains the output for the {@code credProps} extension
|
|
3407
|
+
*
|
|
3408
|
+
* @author Spencer Witt
|
|
3409
|
+
*/
|
|
3410
|
+
export interface CredentialPropertiesOutput {
|
|
3411
|
+
rk?: boolean;
|
|
3412
|
+
}
|
|
3212
3413
|
/**
|
|
3213
3414
|
* Response for the daily active user report.
|
|
3214
3415
|
*
|
|
@@ -3831,6 +4032,8 @@ export interface ExternalIdentifierConfiguration {
|
|
|
3831
4032
|
twoFactorOneTimeCodeIdGenerator?: SecureGeneratorConfiguration;
|
|
3832
4033
|
twoFactorOneTimeCodeIdTimeToLiveInSeconds?: number;
|
|
3833
4034
|
twoFactorTrustIdTimeToLiveInSeconds?: number;
|
|
4035
|
+
webAuthnAuthenticationChallengeTimeToLiveInSeconds?: number;
|
|
4036
|
+
webAuthnRegistrationChallengeTimeToLiveInSeconds?: number;
|
|
3834
4037
|
}
|
|
3835
4038
|
/**
|
|
3836
4039
|
* @author Daniel DeGroff
|
|
@@ -4328,7 +4531,6 @@ export interface GroupResponse {
|
|
|
4328
4531
|
* @author Daniel DeGroff
|
|
4329
4532
|
*/
|
|
4330
4533
|
export interface GroupSearchCriteria extends BaseSearchCriteria {
|
|
4331
|
-
id?: UUID;
|
|
4332
4534
|
name?: string;
|
|
4333
4535
|
tenantId?: UUID;
|
|
4334
4536
|
}
|
|
@@ -5289,6 +5491,7 @@ export declare enum MessengerType {
|
|
|
5289
5491
|
Twilio = "Twilio"
|
|
5290
5492
|
}
|
|
5291
5493
|
export interface MetaData {
|
|
5494
|
+
data?: Record<string, any>;
|
|
5292
5495
|
device?: DeviceInfo;
|
|
5293
5496
|
scopes?: Array<string>;
|
|
5294
5497
|
}
|
|
@@ -5665,6 +5868,84 @@ export declare enum ProofKeyForCodeExchangePolicy {
|
|
|
5665
5868
|
NotRequired = "NotRequired",
|
|
5666
5869
|
NotRequiredWhenUsingClientAuthentication = "NotRequiredWhenUsingClientAuthentication"
|
|
5667
5870
|
}
|
|
5871
|
+
/**
|
|
5872
|
+
* Allows the Relying Party to specify desired attributes of a new credential.
|
|
5873
|
+
*
|
|
5874
|
+
* @author Spencer Witt
|
|
5875
|
+
*/
|
|
5876
|
+
export interface PublicKeyCredentialCreationOptions {
|
|
5877
|
+
attestation?: AttestationConveyancePreference;
|
|
5878
|
+
authenticatorSelection?: AuthenticatorSelectionCriteria;
|
|
5879
|
+
challenge?: string;
|
|
5880
|
+
excludeCredentials?: Array<PublicKeyCredentialDescriptor>;
|
|
5881
|
+
extensions?: WebAuthnRegistrationExtensionOptions;
|
|
5882
|
+
pubKeyCredParams?: Array<PublicKeyCredentialParameters>;
|
|
5883
|
+
rp?: PublicKeyCredentialRelyingPartyEntity;
|
|
5884
|
+
timeout?: number;
|
|
5885
|
+
user?: PublicKeyCredentialUserEntity;
|
|
5886
|
+
}
|
|
5887
|
+
/**
|
|
5888
|
+
* Contains attributes for the Relying Party to refer to an existing public key credential as an input parameter.
|
|
5889
|
+
*
|
|
5890
|
+
* @author Spencer Witt
|
|
5891
|
+
*/
|
|
5892
|
+
export interface PublicKeyCredentialDescriptor {
|
|
5893
|
+
id?: string;
|
|
5894
|
+
transports?: Array<string>;
|
|
5895
|
+
type?: PublicKeyCredentialType;
|
|
5896
|
+
}
|
|
5897
|
+
/**
|
|
5898
|
+
* Describes a user account or WebAuthn Relying Party associated with a public key credential
|
|
5899
|
+
*/
|
|
5900
|
+
export interface PublicKeyCredentialEntity {
|
|
5901
|
+
name?: string;
|
|
5902
|
+
}
|
|
5903
|
+
/**
|
|
5904
|
+
* Supply information on credential type and algorithm to the <i>authenticator</i>.
|
|
5905
|
+
*
|
|
5906
|
+
* @author Spencer Witt
|
|
5907
|
+
*/
|
|
5908
|
+
export interface PublicKeyCredentialParameters {
|
|
5909
|
+
alg?: CoseAlgorithmIdentifier;
|
|
5910
|
+
type?: PublicKeyCredentialType;
|
|
5911
|
+
}
|
|
5912
|
+
/**
|
|
5913
|
+
* Supply additional information about the Relying Party when creating a new credential
|
|
5914
|
+
*
|
|
5915
|
+
* @author Spencer Witt
|
|
5916
|
+
*/
|
|
5917
|
+
export interface PublicKeyCredentialRelyingPartyEntity extends PublicKeyCredentialEntity {
|
|
5918
|
+
id?: string;
|
|
5919
|
+
}
|
|
5920
|
+
/**
|
|
5921
|
+
* Provides the <i>authenticator</i> with the data it needs to generate an assertion.
|
|
5922
|
+
*
|
|
5923
|
+
* @author Spencer Witt
|
|
5924
|
+
*/
|
|
5925
|
+
export interface PublicKeyCredentialRequestOptions {
|
|
5926
|
+
allowCredentials?: Array<PublicKeyCredentialDescriptor>;
|
|
5927
|
+
challenge?: string;
|
|
5928
|
+
rpId?: string;
|
|
5929
|
+
timeout?: number;
|
|
5930
|
+
userVerification?: UserVerificationRequirement;
|
|
5931
|
+
}
|
|
5932
|
+
/**
|
|
5933
|
+
* Defines valid credential types. This is an extension point in the WebAuthn spec. The only defined value at this time is "public-key"
|
|
5934
|
+
*
|
|
5935
|
+
* @author Spencer Witt
|
|
5936
|
+
*/
|
|
5937
|
+
export declare enum PublicKeyCredentialType {
|
|
5938
|
+
publicKey = "public-key"
|
|
5939
|
+
}
|
|
5940
|
+
/**
|
|
5941
|
+
* Supply additional information about the user account when creating a new credential
|
|
5942
|
+
*
|
|
5943
|
+
* @author Spencer Witt
|
|
5944
|
+
*/
|
|
5945
|
+
export interface PublicKeyCredentialUserEntity extends PublicKeyCredentialEntity {
|
|
5946
|
+
displayName?: string;
|
|
5947
|
+
id?: string;
|
|
5948
|
+
}
|
|
5668
5949
|
/**
|
|
5669
5950
|
* JWT Public Key Response Object
|
|
5670
5951
|
*
|
|
@@ -5758,6 +6039,9 @@ export interface ReactorStatus {
|
|
|
5758
6039
|
licensed?: boolean;
|
|
5759
6040
|
scimServer?: ReactorFeatureStatus;
|
|
5760
6041
|
threatDetection?: ReactorFeatureStatus;
|
|
6042
|
+
webAuthn?: ReactorFeatureStatus;
|
|
6043
|
+
webAuthnPlatformAuthenticators?: ReactorFeatureStatus;
|
|
6044
|
+
webAuthnRoamingAuthenticators?: ReactorFeatureStatus;
|
|
5761
6045
|
}
|
|
5762
6046
|
/**
|
|
5763
6047
|
* Response for the user login report.
|
|
@@ -5945,6 +6229,17 @@ export interface Requirable extends Enableable {
|
|
|
5945
6229
|
*/
|
|
5946
6230
|
export interface RequiresCORSConfiguration {
|
|
5947
6231
|
}
|
|
6232
|
+
/**
|
|
6233
|
+
* Describes the Relying Party's requirements for <a href="https://www.w3.org/TR/webauthn-2/#client-side-discoverable-credential">client-side
|
|
6234
|
+
* discoverable credentials</a> (formerly known as "resident keys")
|
|
6235
|
+
*
|
|
6236
|
+
* @author Spencer Witt
|
|
6237
|
+
*/
|
|
6238
|
+
export declare enum ResidentKeyRequirement {
|
|
6239
|
+
discouraged = "discouraged",
|
|
6240
|
+
preferred = "preferred",
|
|
6241
|
+
required = "required"
|
|
6242
|
+
}
|
|
5948
6243
|
export declare enum SAMLLogoutBehavior {
|
|
5949
6244
|
AllParticipants = "AllParticipants",
|
|
5950
6245
|
OnlyOriginator = "OnlyOriginator"
|
|
@@ -5962,6 +6257,7 @@ export interface SAMLv2Configuration extends Enableable {
|
|
|
5962
6257
|
callbackURL?: string;
|
|
5963
6258
|
debug?: boolean;
|
|
5964
6259
|
defaultVerificationKeyId?: UUID;
|
|
6260
|
+
initiatedLogin?: SAMLv2IdPInitiatedLoginConfiguration;
|
|
5965
6261
|
issuer?: string;
|
|
5966
6262
|
keyId?: UUID;
|
|
5967
6263
|
logout?: SAMLv2Logout;
|
|
@@ -6010,6 +6306,14 @@ export interface SAMLv2IdPInitiatedIdentityProvider extends BaseIdentityProvider
|
|
|
6010
6306
|
useNameIdForEmail?: boolean;
|
|
6011
6307
|
usernameClaim?: string;
|
|
6012
6308
|
}
|
|
6309
|
+
/**
|
|
6310
|
+
* IdP Initiated login configuration
|
|
6311
|
+
*
|
|
6312
|
+
* @author Daniel DeGroff
|
|
6313
|
+
*/
|
|
6314
|
+
export interface SAMLv2IdPInitiatedLoginConfiguration extends Enableable {
|
|
6315
|
+
nameIdFormat?: string;
|
|
6316
|
+
}
|
|
6013
6317
|
export interface SAMLv2Logout {
|
|
6014
6318
|
behavior?: SAMLLogoutBehavior;
|
|
6015
6319
|
defaultVerificationKeyId?: UUID;
|
|
@@ -6231,6 +6535,9 @@ export interface Templates {
|
|
|
6231
6535
|
accountTwoFactorDisable?: string;
|
|
6232
6536
|
accountTwoFactorEnable?: string;
|
|
6233
6537
|
accountTwoFactorIndex?: string;
|
|
6538
|
+
accountWebAuthnAdd?: string;
|
|
6539
|
+
accountWebAuthnDelete?: string;
|
|
6540
|
+
accountWebAuthnIndex?: string;
|
|
6234
6541
|
emailComplete?: string;
|
|
6235
6542
|
emailSend?: string;
|
|
6236
6543
|
emailSent?: string;
|
|
@@ -6253,6 +6560,9 @@ export interface Templates {
|
|
|
6253
6560
|
oauth2TwoFactor?: string;
|
|
6254
6561
|
oauth2TwoFactorMethods?: string;
|
|
6255
6562
|
oauth2Wait?: string;
|
|
6563
|
+
oauth2WebAuthn?: string;
|
|
6564
|
+
oauth2WebAuthnReauth?: string;
|
|
6565
|
+
oauth2WebAuthnReauthEnable?: string;
|
|
6256
6566
|
passwordChange?: string;
|
|
6257
6567
|
passwordComplete?: string;
|
|
6258
6568
|
passwordForgot?: string;
|
|
@@ -6304,6 +6614,7 @@ export interface Tenant {
|
|
|
6304
6614
|
themeId?: UUID;
|
|
6305
6615
|
userDeletePolicy?: TenantUserDeletePolicy;
|
|
6306
6616
|
usernameConfiguration?: TenantUsernameConfiguration;
|
|
6617
|
+
webAuthnConfiguration?: TenantWebAuthnConfiguration;
|
|
6307
6618
|
}
|
|
6308
6619
|
/**
|
|
6309
6620
|
* @author Brian Pontarelli
|
|
@@ -6435,6 +6746,25 @@ export interface TenantUserDeletePolicy {
|
|
|
6435
6746
|
export interface TenantUsernameConfiguration {
|
|
6436
6747
|
unique?: UniqueUsernameConfiguration;
|
|
6437
6748
|
}
|
|
6749
|
+
/**
|
|
6750
|
+
* Tenant-level configuration for WebAuthn
|
|
6751
|
+
*
|
|
6752
|
+
* @author Spencer Witt
|
|
6753
|
+
*/
|
|
6754
|
+
export interface TenantWebAuthnConfiguration extends Enableable {
|
|
6755
|
+
bootstrapWorkflow?: TenantWebAuthnWorkflowConfiguration;
|
|
6756
|
+
debug?: boolean;
|
|
6757
|
+
reauthenticationWorkflow?: TenantWebAuthnWorkflowConfiguration;
|
|
6758
|
+
relyingPartyId?: string;
|
|
6759
|
+
relyingPartyName?: string;
|
|
6760
|
+
}
|
|
6761
|
+
/**
|
|
6762
|
+
* @author Spencer Witt
|
|
6763
|
+
*/
|
|
6764
|
+
export interface TenantWebAuthnWorkflowConfiguration extends Enableable {
|
|
6765
|
+
authenticatorAttachmentPreference?: AuthenticatorAttachmentPreference;
|
|
6766
|
+
userVerificationRequirement?: UserVerificationRequirement;
|
|
6767
|
+
}
|
|
6438
6768
|
/**
|
|
6439
6769
|
* @author Daniel DeGroff
|
|
6440
6770
|
*/
|
|
@@ -7352,6 +7682,17 @@ export interface UserUpdateEvent extends BaseEvent {
|
|
|
7352
7682
|
original?: User;
|
|
7353
7683
|
user?: User;
|
|
7354
7684
|
}
|
|
7685
|
+
/**
|
|
7686
|
+
* Used to express whether the Relying Party requires <a href="https://www.w3.org/TR/webauthn-2/#user-verification">user verification</a> for the
|
|
7687
|
+
* current operation.
|
|
7688
|
+
*
|
|
7689
|
+
* @author Spencer Witt
|
|
7690
|
+
*/
|
|
7691
|
+
export declare enum UserVerificationRequirement {
|
|
7692
|
+
required = "required",
|
|
7693
|
+
preferred = "preferred",
|
|
7694
|
+
discouraged = "discouraged"
|
|
7695
|
+
}
|
|
7355
7696
|
/**
|
|
7356
7697
|
* @author Daniel DeGroff
|
|
7357
7698
|
*/
|
|
@@ -7400,6 +7741,200 @@ export interface VerifyRegistrationResponse {
|
|
|
7400
7741
|
export interface VersionResponse {
|
|
7401
7742
|
version?: string;
|
|
7402
7743
|
}
|
|
7744
|
+
/**
|
|
7745
|
+
* API response for completing WebAuthn assertion
|
|
7746
|
+
*
|
|
7747
|
+
* @author Spencer Witt
|
|
7748
|
+
*/
|
|
7749
|
+
export interface WebAuthnAssertResponse {
|
|
7750
|
+
credential?: WebAuthnCredential;
|
|
7751
|
+
}
|
|
7752
|
+
/**
|
|
7753
|
+
* The <i>authenticator's</i> response for the authentication ceremony in its encoded format
|
|
7754
|
+
*
|
|
7755
|
+
* @author Spencer Witt
|
|
7756
|
+
*/
|
|
7757
|
+
export interface WebAuthnAuthenticatorAuthenticationResponse {
|
|
7758
|
+
authenticatorData?: string;
|
|
7759
|
+
clientDataJSON?: string;
|
|
7760
|
+
signature?: string;
|
|
7761
|
+
userHandle?: string;
|
|
7762
|
+
}
|
|
7763
|
+
/**
|
|
7764
|
+
* The <i>authenticator's</i> response for the registration ceremony in its encoded format
|
|
7765
|
+
*
|
|
7766
|
+
* @author Spencer Witt
|
|
7767
|
+
*/
|
|
7768
|
+
export interface WebAuthnAuthenticatorRegistrationResponse {
|
|
7769
|
+
attestationObject?: string;
|
|
7770
|
+
clientDataJSON?: string;
|
|
7771
|
+
}
|
|
7772
|
+
/**
|
|
7773
|
+
* A User's WebAuthnCredential. Contains all data required to complete WebAuthn authentication ceremonies.
|
|
7774
|
+
*
|
|
7775
|
+
* @author Spencer Witt
|
|
7776
|
+
*/
|
|
7777
|
+
export interface WebAuthnCredential {
|
|
7778
|
+
algorithm?: CoseAlgorithmIdentifier;
|
|
7779
|
+
attestationType?: AttestationType;
|
|
7780
|
+
authenticatorSupportsUserVerification?: boolean;
|
|
7781
|
+
credentialId?: string;
|
|
7782
|
+
data?: Record<string, any>;
|
|
7783
|
+
discoverable?: boolean;
|
|
7784
|
+
displayName?: string;
|
|
7785
|
+
id?: UUID;
|
|
7786
|
+
insertInstant?: number;
|
|
7787
|
+
lastUseInstant?: number;
|
|
7788
|
+
name?: string;
|
|
7789
|
+
publicKey?: string;
|
|
7790
|
+
relyingPartyId?: string;
|
|
7791
|
+
signCount?: number;
|
|
7792
|
+
tenantId?: UUID;
|
|
7793
|
+
transports?: Array<string>;
|
|
7794
|
+
userAgent?: string;
|
|
7795
|
+
userId?: UUID;
|
|
7796
|
+
}
|
|
7797
|
+
/**
|
|
7798
|
+
* API request to import an existing WebAuthn credential(s)
|
|
7799
|
+
*
|
|
7800
|
+
* @author Spencer Witt
|
|
7801
|
+
*/
|
|
7802
|
+
export interface WebAuthnCredentialImportRequest {
|
|
7803
|
+
credentials?: Array<WebAuthnCredential>;
|
|
7804
|
+
validateDbConstraints?: boolean;
|
|
7805
|
+
}
|
|
7806
|
+
/**
|
|
7807
|
+
* WebAuthn Credential API response
|
|
7808
|
+
*
|
|
7809
|
+
* @author Spencer Witt
|
|
7810
|
+
*/
|
|
7811
|
+
export interface WebAuthnCredentialResponse {
|
|
7812
|
+
credential?: WebAuthnCredential;
|
|
7813
|
+
credentials?: Array<WebAuthnCredential>;
|
|
7814
|
+
}
|
|
7815
|
+
/**
|
|
7816
|
+
* Contains extension output for requested extensions during a WebAuthn ceremony
|
|
7817
|
+
*
|
|
7818
|
+
* @author Spencer Witt
|
|
7819
|
+
*/
|
|
7820
|
+
export interface WebAuthnExtensionsClientOutputs {
|
|
7821
|
+
credProps?: CredentialPropertiesOutput;
|
|
7822
|
+
}
|
|
7823
|
+
/**
|
|
7824
|
+
* Request to complete the WebAuthn registration ceremony
|
|
7825
|
+
*
|
|
7826
|
+
* @author Spencer Witt
|
|
7827
|
+
*/
|
|
7828
|
+
export interface WebAuthnLoginRequest extends BaseLoginRequest {
|
|
7829
|
+
credential?: WebAuthnPublicKeyAuthenticationRequest;
|
|
7830
|
+
origin?: string;
|
|
7831
|
+
rpId?: string;
|
|
7832
|
+
twoFactorTrustId?: string;
|
|
7833
|
+
}
|
|
7834
|
+
/**
|
|
7835
|
+
* Request to authenticate with WebAuthn
|
|
7836
|
+
*
|
|
7837
|
+
* @author Spencer Witt
|
|
7838
|
+
*/
|
|
7839
|
+
export interface WebAuthnPublicKeyAuthenticationRequest {
|
|
7840
|
+
clientExtensionResults?: WebAuthnExtensionsClientOutputs;
|
|
7841
|
+
id?: string;
|
|
7842
|
+
response?: WebAuthnAuthenticatorAuthenticationResponse;
|
|
7843
|
+
rpId?: string;
|
|
7844
|
+
type?: string;
|
|
7845
|
+
}
|
|
7846
|
+
/**
|
|
7847
|
+
* Request to register a new public key with WebAuthn
|
|
7848
|
+
*
|
|
7849
|
+
* @author Spencer Witt
|
|
7850
|
+
*/
|
|
7851
|
+
export interface WebAuthnPublicKeyRegistrationRequest {
|
|
7852
|
+
clientExtensionResults?: WebAuthnExtensionsClientOutputs;
|
|
7853
|
+
id?: string;
|
|
7854
|
+
response?: WebAuthnAuthenticatorRegistrationResponse;
|
|
7855
|
+
rpId?: string;
|
|
7856
|
+
transports?: Array<string>;
|
|
7857
|
+
type?: string;
|
|
7858
|
+
}
|
|
7859
|
+
/**
|
|
7860
|
+
* Request to complete the WebAuthn registration ceremony for a new credential,.
|
|
7861
|
+
*
|
|
7862
|
+
* @author Spencer Witt
|
|
7863
|
+
*/
|
|
7864
|
+
export interface WebAuthnRegisterCompleteRequest {
|
|
7865
|
+
credential?: WebAuthnPublicKeyRegistrationRequest;
|
|
7866
|
+
origin?: string;
|
|
7867
|
+
rpId?: string;
|
|
7868
|
+
userId?: UUID;
|
|
7869
|
+
}
|
|
7870
|
+
/**
|
|
7871
|
+
* API response for completing WebAuthn credential registration or assertion
|
|
7872
|
+
*
|
|
7873
|
+
* @author Spencer Witt
|
|
7874
|
+
*/
|
|
7875
|
+
export interface WebAuthnRegisterCompleteResponse {
|
|
7876
|
+
credential?: WebAuthnCredential;
|
|
7877
|
+
}
|
|
7878
|
+
/**
|
|
7879
|
+
* API request to start a WebAuthn registration ceremony
|
|
7880
|
+
*
|
|
7881
|
+
* @author Spencer Witt
|
|
7882
|
+
*/
|
|
7883
|
+
export interface WebAuthnRegisterStartRequest {
|
|
7884
|
+
displayName?: string;
|
|
7885
|
+
name?: string;
|
|
7886
|
+
userAgent?: string;
|
|
7887
|
+
userId?: UUID;
|
|
7888
|
+
workflow?: WebAuthnWorkflow;
|
|
7889
|
+
}
|
|
7890
|
+
/**
|
|
7891
|
+
* API response for starting a WebAuthn registration ceremony
|
|
7892
|
+
*
|
|
7893
|
+
* @author Spencer Witt
|
|
7894
|
+
*/
|
|
7895
|
+
export interface WebAuthnRegisterStartResponse {
|
|
7896
|
+
options?: PublicKeyCredentialCreationOptions;
|
|
7897
|
+
}
|
|
7898
|
+
/**
|
|
7899
|
+
* Options to request extensions during credential registration
|
|
7900
|
+
*
|
|
7901
|
+
* @author Spencer Witt
|
|
7902
|
+
*/
|
|
7903
|
+
export interface WebAuthnRegistrationExtensionOptions {
|
|
7904
|
+
credProps?: boolean;
|
|
7905
|
+
}
|
|
7906
|
+
/**
|
|
7907
|
+
* API request to start a WebAuthn authentication ceremony
|
|
7908
|
+
*
|
|
7909
|
+
* @author Spencer Witt
|
|
7910
|
+
*/
|
|
7911
|
+
export interface WebAuthnStartRequest {
|
|
7912
|
+
applicationId?: UUID;
|
|
7913
|
+
credentialId?: UUID;
|
|
7914
|
+
loginId?: string;
|
|
7915
|
+
state?: Record<string, any>;
|
|
7916
|
+
userId?: UUID;
|
|
7917
|
+
workflow?: WebAuthnWorkflow;
|
|
7918
|
+
}
|
|
7919
|
+
/**
|
|
7920
|
+
* API response for starting a WebAuthn authentication ceremony
|
|
7921
|
+
*
|
|
7922
|
+
* @author Spencer Witt
|
|
7923
|
+
*/
|
|
7924
|
+
export interface WebAuthnStartResponse {
|
|
7925
|
+
options?: PublicKeyCredentialRequestOptions;
|
|
7926
|
+
}
|
|
7927
|
+
/**
|
|
7928
|
+
* Identifies the WebAuthn workflow. This will affect the parameters used for credential creation
|
|
7929
|
+
* and request based on the Tenant configuration.
|
|
7930
|
+
*
|
|
7931
|
+
* @author Spencer Witt
|
|
7932
|
+
*/
|
|
7933
|
+
export declare enum WebAuthnWorkflow {
|
|
7934
|
+
bootstrap = "bootstrap",
|
|
7935
|
+
general = "general",
|
|
7936
|
+
reauthentication = "reauthentication"
|
|
7937
|
+
}
|
|
7403
7938
|
/**
|
|
7404
7939
|
* A server where events are sent. This includes user action events and any other events sent by FusionAuth.
|
|
7405
7940
|
*
|