Variables
Const DEFAULT_OAUTH_THRESHOLD
DEFAULT_OAUTH_THRESHOLD: number = 30 * 1000
Const acceptableCredentials653
acceptableCredentials653: "{ "type": "public-key", "id": new Int8Array([53, -21, 26, -99, 5, 4, -112, -76, -126, 90, -35, -7, -31, -92, 19, -71, -39, 73, 52, -10, -14, -7, -59, -7, -36, -111, 64, 101, 29, 89, 90, -56, 108, 42, 32, -19, -113, 118, -114, 49, 109, -70, 68, -89, 36, -36, -103, -128, 34, -24, -40, -71, -125, -120, -80, 63, 25, -33, 2, 26, 111, -52, -15, -52]).buffer }" = "{ "type": "public-key", "id": new Int8Array([53, -21, 26, -99, 5, 4, -112, -76, -126, 90, -35, -7, -31, -92, 19, -71, -39, 73, 52, -10, -14, -7, -59, -7, -36, -111, 64, 101, 29, 89, 90, -56, 108, 42, 32, -19, -113, 118, -114, 49, 109, -70, 68, -89, 36, -36, -103, -128, 34, -24, -40, -71, -125, -120, -80, 63, 25, -33, 2, 26, 111, -52, -15, -52]).buffer }"
Const acceptableMultipleCredentials653
acceptableMultipleCredentials653: "{ "type": "public-key", "id": new Int8Array([17, 88, -12, 26, -50, -48, -38, 36, -69, -105, -68, -38, 66, -53, -37, -50, -109, -126, 122, 26, 25, -45, 96, 37, -124, 102, 124, 94, -98, -59, 113, 94, 115, -111, -69, 45, 37, -83, 118, -115, -4, -49, 34, 115, -24, -49, -37, -17, -127, -15, 62, 18, 93, 122, -109, 53, -52, 44, -63, -74, 109, 2, -110, 45]).buffer },{ "type": "public-key", "id": new Int8Array([1, 83, -98, 32, 110, -62, 78, 53, -63, -118, 12, 122, -72, -15, 85, 48, -39, -97, -73, 108, -122, -60, 56, -112, -89, -118, 111, 0, -4, 13, -50, -43, -53, 28, 114, 82, 22, -76, 15, 51, -95, 26, -90, -93, -51, 115, -28, 85, -105, -27, 111, 70, 106, -28, 45, 126, 44, 63, -16, 97, -55, 31, -24, 57, -92, 48, 26, 127, -39, 75, 12, 13, 100, -77, 13, -48, 49, 52, 31, 85, 9, 63, -122, -90, -54, -87, -110, -1, 115, -122, -69, -15, 83, 57, 95, -31, -92, -116, 89, -109, -98, 21, 24, -80, -28, 103, -28, -82, -39, 114, -29, -46, -76, 123, -69, -44, 124, 10, 53, -103, 19, -43, -12, 62, -83, -86, 95, -78, 70, -105, 116, -25, 106, 54, -72, -119, 91, 91, -71, -49, 22, 25, -108, 112, -14, 55, 9, 75, 89, -91, -59, 45]).buffer }" = "{ "type": "public-key", "id": new Int8Array([17, 88, -12, 26, -50, -48, -38, 36, -69, -105, -68, -38, 66, -53, -37, -50, -109, -126, 122, 26, 25, -45, 96, 37, -124, 102, 124, 94, -98, -59, 113, 94, 115, -111, -69, 45, 37, -83, 118, -115, -4, -49, 34, 115, -24, -49, -37, -17, -127, -15, 62, 18, 93, 122, -109, 53, -52, 44, -63, -74, 109, 2, -110, 45]).buffer },{ "type": "public-key", "id": new Int8Array([1, 83, -98, 32, 110, -62, 78, 53, -63, -118, 12, 122, -72, -15, 85, 48, -39, -97, -73, 108, -122, -60, 56, -112, -89, -118, 111, 0, -4, 13, -50, -43, -53, 28, 114, 82, 22, -76, 15, 51, -95, 26, -90, -93, -51, 115, -28, 85, -105, -27, 111, 70, 106, -28, 45, 126, 44, 63, -16, 97, -55, 31, -24, 57, -92, 48, 26, 127, -39, 75, 12, 13, 100, -77, 13, -48, 49, 52, 31, 85, 9, 63, -122, -90, -54, -87, -110, -1, 115, -122, -69, -15, 83, 57, 95, -31, -92, -116, 89, -109, -98, 21, 24, -80, -28, 103, -28, -82, -39, 114, -29, -46, -76, 123, -69, -44, 124, 10, 53, -103, 19, -43, -12, 62, -83, -86, 95, -78, 70, -105, 116, -25, 106, 54, -72, -119, 91, 91, -71, -49, 22, 25, -108, 112, -14, 55, 9, 75, 89, -91, -59, 45]).buffer }"
Const allowCredentials70
allowCredentials70: "allowCredentials: [{ "type": "public-key", "id": new Int8Array([1, -16, 9, 79, 6, -2, -82, 51, 124, -94, 95, 23, -86, 70, -43, 89, 91, -9, 45, -22, 91, -51, 84, 93, 24, -64, 38, 101, 126, -53, 87, 70, -49, -88, -105, 116, 33, 75, -39, -92, -5, 115, 12, 52, 124, -100, 85, 104, -15, 5, -13, 25, -74, 101, 71, -115, -102, 16, 10, -9, -19, -110, 65, 118, -28, 89, -15, -115, -81, 22, -104, 123, 17, -92, 49, 109, -38, -51, 100, 96, -65, 25, -48, 28, 106, -45, 17, -45, -37, 46, -5, -6, -26, -23, -108, 13, -66, -55, -117, -107, 119, 7, -32, 34, 46, 0, -29, -111, -32, 45, -15, -113, 110, 123, -44, 6, 10, 65, 99, 25, 105, 69, -127, 76, 127, -33, -89, -56, 74, 25, 43, -43, -56, 9, 87, 80, 124, -32, -39, 115, 17, 18, 78, 121, 69, -36, -44, -28, -109, -126, 58, 64, 80, -4, 21, 63, -19]).buffer }]" = "allowCredentials: [{ "type": "public-key", "id": new Int8Array([1, -16, 9, 79, 6, -2, -82, 51, 124, -94, 95, 23, -86, 70, -43, 89, 91, -9, 45, -22, 91, -51, 84, 93, 24, -64, 38, 101, 126, -53, 87, 70, -49, -88, -105, 116, 33, 75, -39, -92, -5, 115, 12, 52, 124, -100, 85, 104, -15, 5, -13, 25, -74, 101, 71, -115, -102, 16, 10, -9, -19, -110, 65, 118, -28, 89, -15, -115, -81, 22, -104, 123, 17, -92, 49, 109, -38, -51, 100, 96, -65, 25, -48, 28, 106, -45, 17, -45, -37, 46, -5, -6, -26, -23, -108, 13, -66, -55, -117, -107, 119, 7, -32, 34, 46, 0, -29, -111, -32, 45, -15, -113, 110, 123, -44, 6, 10, 65, 99, 25, 105, 69, -127, 76, 127, -33, -89, -56, 74, 25, 43, -43, -56, 9, 87, 80, 124, -32, -39, 115, 17, 18, 78, 121, 69, -36, -44, -28, -109, -126, 58, 64, 80, -4, 21, 63, -19]).buffer }]"
Const allowMultipleCredentials70
allowMultipleCredentials70: "allowCredentials: [{ "type": "public-key", "id": new Int8Array([-33, 120, 18, 124, 16, 5, -127, -51, 68, 85, 76, -92, -3, 25, 116, 91, 71, 53, 106, -114, -86, 9, -81, -96, -32, -110, 66, -23, -5, 104, 96, 46, 43, -66, -110, 8, -70, 11, 51, -93, 19, 124, 81, 78, 58, -97, 89, -87, -26, -112, 95, -83, 118, -25, 118, 3, 35, -96, 120, -76, -87, 83, -101, 82]).buffer },{ "type": "public-key", "id": new Int8Array([1, 73, 82, 23, 76, -5, -53, -48, -104, -17, -42, 45, 7, 35, 35, -72, -7, 37, 9, 37, 117, 42, 66, 116, 58, 25, -68, 53, 113, -10, 102, 3, -60, -81, -74, 96, -5, 111, -56, 110, -101, -54, -31, -123, -100, 3, 37, -69, -114, -19, -25, -62, 18, 122, 39, 11, 83, 60, -58, 3, 116, 10, -80, -35, 6, -128, -51, -92, 100, -115, -22, -122, 21, -65, 97, 67, -49, 26, 42, -11, 90, 121, -63, 112, -16, 118, -99, -73, -89, -67, 72, -80, 18, -72, 109, 4, -14, 1, -93, 17, -17, -70, -2, -5, -116, 111, -128, 7, 62, -34, -43, 110, 89, 113, -65, -95, 113, -5, -104, -100, -73, 42, 2, 112, -21, 41, 41, 91, 108, -102, 47, -77, -52, 70, 107, -4, 25, -120, 114, 30, 23, 103, 120, 17, 55, 91, -110, -58, -110, 13, -56, 57, -126, 36, 40, 89, -9]).buffer }]" = "allowCredentials: [{ "type": "public-key", "id": new Int8Array([-33, 120, 18, 124, 16, 5, -127, -51, 68, 85, 76, -92, -3, 25, 116, 91, 71, 53, 106, -114, -86, 9, -81, -96, -32, -110, 66, -23, -5, 104, 96, 46, 43, -66, -110, 8, -70, 11, 51, -93, 19, 124, 81, 78, 58, -97, 89, -87, -26, -112, 95, -83, 118, -25, 118, 3, 35, -96, 120, -76, -87, 83, -101, 82]).buffer },{ "type": "public-key", "id": new Int8Array([1, 73, 82, 23, 76, -5, -53, -48, -104, -17, -42, 45, 7, 35, 35, -72, -7, 37, 9, 37, 117, 42, 66, 116, 58, 25, -68, 53, 113, -10, 102, 3, -60, -81, -74, 96, -5, 111, -56, 110, -101, -54, -31, -123, -100, 3, 37, -69, -114, -19, -25, -62, 18, 122, 39, 11, 83, 60, -58, 3, 116, 10, -80, -35, 6, -128, -51, -92, 100, -115, -22, -122, 21, -65, 97, 67, -49, 26, 42, -11, 90, 121, -63, 112, -16, 118, -99, -73, -89, -67, 72, -80, 18, -72, 109, 4, -14, 1, -93, 17, -17, -70, -2, -5, -116, 111, -128, 7, 62, -34, -43, 110, 89, 113, -65, -95, 113, -5, -104, -100, -73, 42, 2, 112, -21, 41, 41, 91, 108, -102, 47, -77, -52, 70, 107, -4, 25, -120, 114, 30, 23, 103, 120, 17, 55, 91, -110, -58, -110, 13, -56, 57, -126, 36, 40, 89, -9]).buffer }]"
Const authenticateInputWithAcceptableCredentialsWithoutRpid
authenticateInputWithAcceptableCredentialsWithoutRpid: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var acceptableCredentials = [{ "type": "public-key", "id": new Int8Array([1, 97, 2, 123, -105, -19, -106, 10, -86, 82, -23, 5, 52, 63, 103, 110, -71, 53, 107, 104, 76, -42, -49, 96, 67, -114, -97, 19, -59, 89, -102, -115, -110, -101, -6, -98, 39, -75, 2, 74, 23, -105, 67, 6, -112, 21, -3, 36, -114, 52, 35, 75, 74, 82, -8, 115, -128, -34, -105, 110, 124, 41, -79, -53, -90, 81, -11, -7, 91, -45, -67, -82, 106, 74, 30, 112, 100, -47, 54, -12, 95, 81, 97, 36, 123, -15, -91, 87, -82, 87, -45, -103, -80, 109, -111, 82, 109, 58, 50, 19, -21, -102, 54, -108, -68, 12, -101, -53, -65, 11, -94, -36, 112, -101, -95, -90, -118, 68, 13, 8, -49, -77, -28, -82, -97, 126, -71, 33, -58, 19, 58, -118, 36, -28, 22, -55, 64, -72, -80, -9, -48, -50, 58, -52, 64, -64, -27, -5, -12, 110, -95, -17]).buffer }];var options = {challenge: new Int8Array([-42, -21, -101, -22, -35, 94, 14, 33, -75, -12, -113, 86, 109, -51, 62, 89, 29, 119, 48, -92, 33, -64, 102, -18, 18, -122, 73, 13, -17, -50, -22, -74]).buffer,timeout: 60000,userVerification: "preferred",allowCredentials: acceptableCredentials};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var acceptableCredentials = [{ "type": "public-key", "id": new Int8Array([1, 97, 2, 123, -105, -19, -106, 10, -86, 82, -23, 5, 52, 63, 103, 110, -71, 53, 107, 104, 76, -42, -49, 96, 67, -114, -97, 19, -59, 89, -102, -115, -110, -101, -6, -98, 39, -75, 2, 74, 23, -105, 67, 6, -112, 21, -3, 36, -114, 52, 35, 75, 74, 82, -8, 115, -128, -34, -105, 110, 124, 41, -79, -53, -90, 81, -11, -7, 91, -45, -67, -82, 106, 74, 30, 112, 100, -47, 54, -12, 95, 81, 97, 36, 123, -15, -91, 87, -82, 87, -45, -103, -80, 109, -111, 82, 109, 58, 50, 19, -21, -102, 54, -108, -68, 12, -101, -53, -65, 11, -94, -36, 112, -101, -95, -90, -118, 68, 13, 8, -49, -77, -28, -82, -97, 126, -71, 33, -58, 19, 58, -118, 36, -28, 22, -55, 64, -72, -80, -9, -48, -50, 58, -52, 64, -64, -27, -5, -12, 110, -95, -17]).buffer }];var options = {challenge: new Int8Array([-42, -21, -101, -22, -35, 94, 14, 33, -75, -12, -113, 86, 109, -51, 62, 89, 29, 119, 48, -92, 33, -64, 102, -18, 18, -122, 73, 13, -17, -50, -22, -74]).buffer,timeout: 60000,userVerification: "preferred",allowCredentials: acceptableCredentials};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const authenticateInputWithRpidAllowCredentialsAndQuotes
authenticateInputWithRpidAllowCredentialsAndQuotes: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {"rpId": "example.com","challenge": new Int8Array([14, 126, -110, -74, 64, -66, 20, -56, -40, -28, 116, -61, -128, -20, 72, 24, 42, 79, -105, 94, -84, -12, -17, -97, 105, -31, -30, 92, 55, 67, -83, 65]).buffer,"timeout": 60000,"allowCredentials": [{ "type": "public-key", "id": new Int8Array([-107, 93, 68, -67, -5, 107, 18, 16, -25, -30, 80, 103, -75, -53, -2, -95, 102, 42, 47, 126, -1, 85, 93, 45, -85, 8, -108, 107, 47, -25, 66, 12, -96, 81, 104, -127, 26, -59, -69, -23, 75, 89, 58, 124, -93, 4, 28, -128, 121, 35, 39, 103, -86, -86, 123, -67, -7, -4, 79, -49, 127, -19, 7, 4]).buffer }]};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {"rpId": "example.com","challenge": new Int8Array([14, 126, -110, -74, 64, -66, 20, -56, -40, -28, 116, -61, -128, -20, 72, 24, 42, 79, -105, 94, -84, -12, -17, -97, 105, -31, -30, 92, 55, 67, -83, 65]).buffer,"timeout": 60000,"allowCredentials": [{ "type": "public-key", "id": new Int8Array([-107, 93, 68, -67, -5, 107, 18, 16, -25, -30, 80, 103, -75, -53, -2, -95, 102, 42, 47, 126, -1, 85, 93, 45, -85, 8, -108, 107, 47, -25, 66, 12, -96, 81, 104, -127, 26, -59, -69, -23, 75, 89, 58, 124, -93, 4, 28, -128, 121, 35, 39, 103, -86, -86, 123, -67, -7, -4, 79, -49, 127, -19, 7, 4]).buffer }]};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const authenticateInputWithRpidAndAllowCredentials
authenticateInputWithRpidAndAllowCredentials: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {rpId: "example.com",challenge: new Int8Array([14, 126, -110, -74, 64, -66, 20, -56, -40, -28, 116, -61, -128, -20, 72, 24, 42, 79, -105, 94, -84, -12, -17, -97, 105, -31, -30, 92, 55, 67, -83, 65]).buffer,timeout: 60000,allowCredentials: [{ type: "public-key", id: new Int8Array([-107, 93, 68, -67, -5, 107, 18, 16, -25, -30, 80, 103, -75, -53, -2, -95, 102, 42, 47, 126, -1, 85, 93, 45, -85, 8, -108, 107, 47, -25, 66, 12, -96, 81, 104, -127, 26, -59, -69, -23, 75, 89, 58, 124, -93, 4, 28, -128, 121, 35, 39, 103, -86, -86, 123, -67, -7, -4, 79, -49, 127, -19, 7, 4]).buffer }]};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {rpId: "example.com",challenge: new Int8Array([14, 126, -110, -74, 64, -66, 20, -56, -40, -28, 116, -61, -128, -20, 72, 24, 42, 79, -105, 94, -84, -12, -17, -97, 105, -31, -30, 92, 55, 67, -83, 65]).buffer,timeout: 60000,allowCredentials: [{ type: "public-key", id: new Int8Array([-107, 93, 68, -67, -5, 107, 18, 16, -25, -30, 80, 103, -75, -53, -2, -95, 102, 42, 47, 126, -1, 85, 93, 45, -85, 8, -108, 107, 47, -25, 66, 12, -96, 81, 104, -127, 26, -59, -69, -23, 75, 89, 58, 124, -93, 4, 28, -128, 121, 35, 39, 103, -86, -86, 123, -67, -7, -4, 79, -49, 127, -19, 7, 4]).buffer }]};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const authenticateInputWithRpidAndAllowCredentialsAndAllowRecoveryCode
authenticateInputWithRpidAndAllowCredentialsAndAllowRecoveryCode: "/** Copyright 2018-2022 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {challenge: new Int8Array([-17, -117, -10, 120, -90, 127, 70, -73, 114, -37, -94, 126, -96, -111, -65, 78, -84, 53, 74, -18, 93, 102, 24, -77, -97, -6, -106, -10, -101, -29, 36, -33]).buffer,timeout: 60000,userVerification: "preferred",allowCredentials: [{ "type": "public-key", "id": new Int8Array([-33, 59, -68, 121, 57, -27, -33, -40, 55, 8, -65, -15, -40, -103, 73, 61, 49, 56, 65, -84, -27, -86, -103, -115, 15, 43, -64, -60, -105, 81, -111, 115, 105, 111, -105, 64, 73, 55, -35, 35, 38, 59, -91, 95, 64, 30, -10, -6, -91, -59, 26, 19, -3, 2, -39, 71, 112, 124, -66, -89, -10, -35, 122, 103]).buffer }]};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;var allowRecoveryCode = 'true' === "true";if (allowRecoveryCode) {var loginButton = document.getElementById("loginButton_0");if (loginButton) {var prev = loginButton.previousElementSibling;if (prev && prev.nodeName == "DIV") {prev.getElementsByTagName("div")[0].innerHTML = "<i class="fa fa-times-circle text-primary"> "+ err + "</i>";}}} else {document.getElementById("loginButton_0").click();}});" = `/** Copyright 2018-2022 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {challenge: new Int8Array([-17, -117, -10, 120, -90, 127, 70, -73, 114, -37, -94, 126, -96, -111, -65, 78, -84, 53, 74, -18, 93, 102, 24, -77, -97, -6, -106, -10, -101, -29, 36, -33]).buffer,timeout: 60000,userVerification: "preferred",allowCredentials: [{ "type": "public-key", "id": new Int8Array([-33, 59, -68, 121, 57, -27, -33, -40, 55, 8, -65, -15, -40, -103, 73, 61, 49, 56, 65, -84, -27, -86, -103, -115, 15, 43, -64, -60, -105, 81, -111, 115, 105, 111, -105, 64, 73, 55, -35, 35, 38, 59, -91, 95, 64, 30, -10, -6, -91, -59, 26, 19, -3, 2, -39, 71, 112, 124, -66, -89, -10, -35, 122, 103]).buffer }]};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;var allowRecoveryCode = 'true' === "true";if (allowRecoveryCode) {var loginButton = document.getElementById("loginButton_0");if (loginButton) {var prev = loginButton.previousElementSibling;if (prev && prev.nodeName == "DIV") {prev.getElementsByTagName("div")[0].innerHTML = "<i class="fa fa-times-circle text-primary"> "+ err + "</i>";}}} else {document.getElementById("loginButton_0").click();}});`
Const authenticateInputWithoutRpidAndAllowCredentials
authenticateInputWithoutRpidAndAllowCredentials: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {challenge: new Int8Array([14, 126, -110, -74, 64, -66, 20, -56, -40, -28, 116, -61, -128, -20, 72, 24, 42, 79, -105, 94, -84, -12, -17, -97, 105, -31, -30, 92, 55, 67, -83, 65]).buffer,timeout: 60000,};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var options = {challenge: new Int8Array([14, 126, -110, -74, 64, -66, 20, -56, -40, -28, 116, -61, -128, -20, 72, 24, 42, 79, -105, 94, -84, -12, -17, -97, 105, -31, -30, 92, 55, 67, -83, 65]).buffer,timeout: 60000,};navigator.credentials.get({ "publicKey" : options }).then(function (assertion) {var clientData = String.fromCharCode.apply(null, new Uint8Array(assertion.response.clientDataJSON));var authenticatorData = new Int8Array(assertion.response.authenticatorData).toString();var signature = new Int8Array(assertion.response.signature).toString();var rawId = assertion.id;var userHandle = String.fromCharCode.apply(null, new Uint8Array(assertion.response.userHandle));document.getElementById('webAuthnOutcome').value = clientData + "::" + authenticatorData + "::" + signature + "::" + rawId + "::" + userHandle;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const authzByTreeResFromIG
authzByTreeResFromIG: any = {headers: {get(): string {return 'text/html; charset=utf-8';},},redirected: true,// eslint-disable-next-line max-len, prettier/prettierurl: 'https://openam.example.com/am/json/realms/root/authenticate?authIndexType=composite_advice&authIndexValue=%3CAdvices%3E%3CAttributeValuePair%3E%3CAttribute%20name%3D%22AuthenticateToServiceConditionAdvice%22%2F%3E%3CValue%3Eabc%3C%2FValue%3E%3C%2FAttributeValuePair%3E%3C%2FAdvices%3E',// eslint-disable-next-line @typescript-eslint/no-explicit-any} as any
Const authzByTreeResFromREST
authzByTreeResFromREST: any = {clone() {return {// eslint-disable-next-line @typescript-eslint/no-explicit-anyjson(): any {return Promise.resolve(authzTreeJSON);},};},json() {return Promise.resolve(authzTreeJSON);},// eslint-disable-next-line @typescript-eslint/no-explicit-any} as any
Const authzByTxnResFromIG
authzByTxnResFromIG: any = {headers: {get(): string {return 'text/html; charset=utf-8';},},redirected: true,// eslint-disable-next-line max-len, prettier/prettierurl: 'https://openam.example.com/am/json/realms/root/authenticate?authIndexType=composite_advice&authIndexValue=%3CAdvices%3E%3CAttributeValuePair%3E%3CAttribute%20name%3D%22TransactionConditionAdvice%22%2F%3E%3CValue%3Eabc%3C%2FValue%3E%3C%2FAttributeValuePair%3E%3C%2FAdvices%3E',// eslint-disable-next-line @typescript-eslint/no-explicit-any} as any
Const authzByTxnResFromREST
authzByTxnResFromREST: any = {clone() {return {// eslint-disable-next-line @typescript-eslint/no-explicit-anyjson(): any {return Promise.resolve(authzTxnJSON);},};},json() {return Promise.resolve(authzTxnJSON);},// eslint-disable-next-line @typescript-eslint/no-explicit-any} as any
Const browserProps
browserProps: string[] = ['userAgent','appName','appCodeName','appVersion','appMinorVersion','buildID','product','productSub','vendor','vendorSub','browserLanguage',]
Const configurableCategories
configurableCategories: string[] = ['fontNames','displayProps','browserProps','hardwareProps','platformProps',]
Const delay
delay: number = 30 * 1000
Const displayProps
displayProps: string[] = ['width', 'height', 'pixelDepth', 'orientation.angle']
Const displayRecoveryCodes
displayRecoveryCodes: "/** Copyright 2018 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/var newLocation = document.getElementById("wrapper");var oldHtml = newLocation.getElementsByTagName("fieldset")[0].innerHTML;newLocation.getElementsByTagName("fieldset")[0].innerHTML = "<div class=\"panel panel-default\">\n" +" <div class=\"panel-body text-center\">\n" +" <h3>Your Recovery Codes</h3>\n" +" <h4>You must make a copy of these WebAuthn authenticator recovery codes. They cannot be displayed again.</h4>\n" +" </div>\n" +"<div class=\"text-center\">\n" +"iZmEtxvQ00\n" +"</div>\n" +"<div class=\"text-center\">\n" +"Eqw3GFVamY\n" +"</div>\n" +"<div class=\"text-center\">\n" +"nNPqIEtIpS\n" +"</div>\n" +"<div class=\"text-center\">\n" +"vGhNQpDjP8\n" +"</div>\n" +"<div class=\"text-center\">\n" +"ItA4W3iBaA\n" +"</div>\n" +"<div class=\"text-center\">\n" +"JmLQP6XyIo\n" +"</div>\n" +"<div class=\"text-center\">\n" +"G2e6foNKke\n" +"</div>\n" +"<div class=\"text-center\">\n" +"h2SqAqvT21\n" +"</div>\n" +"<div class=\"text-center\">\n" +"q6VX1ojNbI\n" +"</div>\n" +"<div class=\"text-center\">\n" +"IZKIQXAfY2\n" +"</div>\n" +"<div class=\"panel-body text-center\">\n" +" <p>Use one of these codes to authenticate if you lose your device, which has been named: <em>New Security Key</em></p>\n" +"</div>\n" +"</div>" + oldHtml;document.body.appendChild(newLocation);" = `/** Copyright 2018 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/\n\nvar newLocation = document.getElementById(\"wrapper\");\nvar oldHtml = newLocation.getElementsByTagName(\"fieldset\")[0].innerHTML;\nnewLocation.getElementsByTagName(\"fieldset\")[0].innerHTML = \"<div class=\\\"panel panel-default\\\">\\n\" +\" <div class=\\\"panel-body text-center\\\">\\n\" +\" <h3>Your Recovery Codes</h3>\\n\" +\" <h4>You must make a copy of these WebAuthn authenticator recovery codes. They cannot be displayed again.</h4>\\n\" +\" </div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"iZmEtxvQ00\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"Eqw3GFVamY\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"nNPqIEtIpS\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"vGhNQpDjP8\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"ItA4W3iBaA\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"JmLQP6XyIo\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"G2e6foNKke\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"h2SqAqvT21\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"q6VX1ojNbI\\n\" +\"</div>\\n\" +\"<div class=\\\"text-center\\\">\\n\" +\"IZKIQXAfY2\\n\" +\"</div>\\n\" +\"<div class=\\\"panel-body text-center\\\">\\n\" +\" <p>Use one of these codes to authenticate if you lose your device, which has been named: <em>New Security Key</em></p>\\n\" +\"</div>\\n\" +\"</div>\" + oldHtml;\ndocument.body.appendChild(newLocation);\n\n\n`
Const expectedRecoveryCodes
expectedRecoveryCodes: string[] = ['iZmEtxvQ00','Eqw3GFVamY','nNPqIEtIpS','vGhNQpDjP8','ItA4W3iBaA','JmLQP6XyIo','G2e6foNKke','h2SqAqvT21','q6VX1ojNbI','IZKIQXAfY2',]
Const fontNames
fontNames: string[] = ['cursive','monospace','serif','sans-serif','fantasy','Arial','Arial Black','Arial Narrow','Arial Rounded MT Bold','Bookman Old Style','Bradley Hand ITC','Century','Century Gothic','Comic Sans MS','Courier','Courier New','Georgia','Gentium','Impact','King','Lucida Console','Lalit','Modena','Monotype Corsiva','Papyrus','Tahoma','TeX','Times','Times New Roman','Trebuchet MS','Verdana','Verona',]
Const hardwareProps
hardwareProps: string[] = ['cpuClass','deviceMemory','hardwareConcurrency','maxTouchPoints','oscpu',]
Const middleware
middleware
: RequestMiddleware[] = [(req: RequestObj, action: Action, next: NextFn): void => {switch (action.type) {case a:case b:req.url.searchParams.set('letter', 'true');req.init.headers = { ...{ 'x-letter': 'true' }, ...req.init.headers };break;case one:case two:req.url.searchParams.set('letter', 'false');req.init.headers = { ...{ 'x-letter': 'false' }, ...req.init.headers };break;}next();},(req: RequestObj, action: Action, next: NextFn): void => {switch (action.type) {case a:req.url.searchParams.set('char', 'a');req.init.headers = { ...{ 'x-char': 'a' }, ...req.init.headers };break;case b:req.url.searchParams.set('char', 'b');req.init.headers = { ...{ 'x-char': 'b' }, ...req.init.headers };break;}next();},(req: RequestObj, action: Action, next: NextFn): void => {switch (action.type) {case one:req.url.searchParams.set('char', '1');req.init.headers = { ...{ 'x-char': '1' }, ...req.init.headers };break;case two:req.url.searchParams.set('char', '2');req.init.headers = { ...{ 'x-char': '2' }, ...req.init.headers };break;}next();},(req: RequestObj, action: Action, next: NextFn): void => {switch (action.type) {case add:// eslint-disable-next-line @typescript-eslint/ban-ts-comment// @ts-ignorereq.init.headers = { ...{ 'x-char': 'a,' + action.payload }, ...req.init.headers };break;}next();},// eslint-disable-next-line @typescript-eslint/ban-ts-comment// @ts-ignore(req: RequestObj, action: Action, next: NextFn): void => {switch (action.type) {case reassignment:req = { url: new URL('https://bad.com'), init: { headers: { 'x-bad': 'true' } } };break;}next();},// eslint-disable-next-line @typescript-eslint/ban-ts-comment// @ts-ignore(req: RequestObj, action: Action, next: NextFn): void => {switch (action.type) {case mutateAction:action.type = 'hello' as ActionTypes;break;}next();},]
Const mutateAction
mutate
Action: ActionTypes = 'MUTATE-ACTION' as ActionTypes
Const oauthThreshold
oauthThreshold: 120000 = 120000
Const platformProps
platformProps: string[] = ['language', 'platform', 'userLanguage', 'systemLanguage']
Const pubKeyCredParamsStr
pubKeyCredParamsStr: "[ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ]" = "[ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ]"
Const reassignment
reassignment
: ActionTypes = 'REASSIGNMENT' as ActionTypes
Const registerInputWithExcludeCreds
registerInputWithExcludeCreds: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {challenge: new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:rp: {name: "ForgeRock"},// User:user: {id: Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),name: "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629",displayName: "Bob Tester"},pubKeyCredParams: [ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ],attestation: "none",timeout: 60000,excludeCredentials: [{ "type": "public-key", "id": new Int8Array([49, -96, -107, 113, 106, 5, 115, 22, 68, 121, -85, -27, 8, -58, -113, 127, -105, -37, -10, -12, -58, -25, 29, -82, -18, 69, -99, 125, 33, 82, 38, -66, -27, -128, -91, -86, 87, 68, 94, 0, -78, 70, -11, -70, -14, -53, 38, -60, 46, 27, 66, 46, 21, -125, -70, 123, -46, -124, 86, -2, 102, 70, -52, 54]).buffer },{ "type": "public-key", "id": new Int8Array([64, 17, -15, -123, -21, 127, 76, -120, 90, -112, -5, 54, 105, 93, 82, -104, -79, 107, -69, -3, -113, -94, -59, -4, 126, -33, 117, 32, -44, 122, -97, 8, -112, 105, -96, 96, 90, 44, -128, -121, 107, 79, -98, -68, -93, 11, -105, -47, 102, 13, 110, 84, 59, -91, -30, 37, -3, -22, 39, 111, -10, 87, -50, -35]).buffer }],authenticatorSelection: {"userVerification":"preferred"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {challenge: new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:rp: {name: "ForgeRock"},// User:user: {id: Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),name: "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629",displayName: "Bob Tester"},pubKeyCredParams: [ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ],attestation: "none",timeout: 60000,excludeCredentials: [{ "type": "public-key", "id": new Int8Array([49, -96, -107, 113, 106, 5, 115, 22, 68, 121, -85, -27, 8, -58, -113, 127, -105, -37, -10, -12, -58, -25, 29, -82, -18, 69, -99, 125, 33, 82, 38, -66, -27, -128, -91, -86, 87, 68, 94, 0, -78, 70, -11, -70, -14, -53, 38, -60, 46, 27, 66, 46, 21, -125, -70, 123, -46, -124, 86, -2, 102, 70, -52, 54]).buffer },{ "type": "public-key", "id": new Int8Array([64, 17, -15, -123, -21, 127, 76, -120, 90, -112, -5, 54, 105, 93, 82, -104, -79, 107, -69, -3, -113, -94, -59, -4, 126, -33, 117, 32, -44, 122, -97, 8, -112, 105, -96, 96, 90, 44, -128, -121, 107, 79, -98, -68, -93, 11, -105, -47, 102, 13, 110, 84, 59, -91, -30, 37, -3, -22, 39, 111, -10, 87, -50, -35]).buffer }],authenticatorSelection: {"userVerification":"preferred"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const registerInputWithRpid
registerInputWithRpid: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {challenge: new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:rp: {id: "example.com",name: "ForgeRock"},// User:user: {id: Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),name: "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629",displayName: "bob_lee-tester@me.co.uk"},// Below pubKeyCredParams format represents AM 6.5pubKeyCredParams: [{type: "public-key",alg: -7},{type: "public-key",alg: -257}],attestation: "none",timeout: 60000,excludeCredentials: [],authenticatorSelection: {userVerification: "preferred"authenticatorAttachment:"cross-platform"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {challenge: new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:rp: {id: "example.com",name: "ForgeRock"},// User:user: {id: Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),name: "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629",displayName: "bob_lee-tester@me.co.uk"},// Below pubKeyCredParams format represents AM 6.5pubKeyCredParams: [{type: "public-key",alg: -7},{type: "public-key",alg: -257}],attestation: "none",timeout: 60000,excludeCredentials: [],authenticatorSelection: {userVerification: "preferred"authenticatorAttachment:"cross-platform"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const registerInputWithRpidAndQuotes
registerInputWithRpidAndQuotes: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {"challenge": new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:"rp": {"id": "example.com","name": "ForgeRock"},// User:"user": {"id": Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),"name": "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629","displayName": "bob_lee-tester@me.co.uk"},"pubKeyCredParams": [ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ],"attestation": "none","timeout": 60000,"excludeCredentials": [],"authenticatorSelection": {"userVerification":"preferred","authenticatorAttachment":"cross-platform"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {"challenge": new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:"rp": {"id": "example.com","name": "ForgeRock"},// User:"user": {"id": Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),"name": "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629","displayName": "bob_lee-tester@me.co.uk"},"pubKeyCredParams": [ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ],"attestation": "none","timeout": 60000,"excludeCredentials": [],"authenticatorSelection": {"userVerification":"preferred","authenticatorAttachment":"cross-platform"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const registerInputWithoutRpid
registerInputWithoutRpid: "/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {challenge: new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:rp: {name: "ForgeRock"},// User:user: {id: Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),name: "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629",displayName: "Bob Tester"},pubKeyCredParams: [ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ],attestation: "none",timeout: 60000,excludeCredentials: [],authenticatorSelection: {"userVerification":"preferred"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});" = `/** Copyright 2018-2020 ForgeRock AS. All Rights Reserved** Use of this code requires a commercial software license with ForgeRock AS.* or with one of its affiliates. All use shall be exclusively subject* to such license between the licensee and ForgeRock AS.*/if (!window.PublicKeyCredential) {document.getElementById('webAuthnOutcome').value = "unsupported";document.getElementById("loginButton_0").click();}var publicKey = {challenge: new Int8Array([102, -15, -36, -101, -95, 10, -20, 39, 29, 70, 122, 25, 53, 83, 72, -38, 83, -92, 31, -30, 26, -94, 92, -94, -83, 7, 82, -66, -125, -95, -4, -75]).buffer,// Relying Party:rp: {name: "ForgeRock"},// User:user: {id: Uint8Array.from("NTdhNWI0ZTQtNjk5OS00YjQ1LWJmODYtYTRmMmU1ZDRiNjI5", function (c) { return c.charCodeAt(0) }),name: "57a5b4e4-6999-4b45-bf86-a4f2e5d4b629",displayName: "Bob Tester"},pubKeyCredParams: [ { "type": "public-key", "alg": -257 }, { "type": "public-key", "alg": -7 } ],attestation: "none",timeout: 60000,excludeCredentials: [],authenticatorSelection: {"userVerification":"preferred"}};navigator.credentials.create({publicKey: publicKey}).then(function (newCredentialInfo) {var rawId = newCredentialInfo.id;var clientData = String.fromCharCode.apply(null, new Uint8Array(newCredentialInfo.response.clientDataJSON));var keyData = new Int8Array(newCredentialInfo.response.attestationObject).toString();document.getElementById('webAuthnOutcome').value = clientData + "::" + keyData + "::" + rawId;document.getElementById("loginButton_0").click();}).catch(function (err) {document.getElementById('webAuthnOutcome').value = "ERROR" + "::" + err;document.getElementById("loginButton_0").click();});`
Const responseFromAM
responseFromAM: any = {clone() {return {// eslint-disable-next-line @typescript-eslint/no-explicit-anyjson(): any {return Promise.resolve({callbacks: {},});},};},json() {return Promise.resolve({callbacks: {},});},// eslint-disable-next-line @typescript-eslint/no-explicit-any} as any
Const tokenExpiryNotSet
tokenExpiryNotSet: any = undefined
Const tokenExpiryOutsideThreshold
tokenExpiryOutsideThreshold: 180000 = 180000
Const tokenExpiryWithinThreshold
tokenExpiryWithinThreshold: 60000 = 60000
Let window
window: unknown
A function that can populate the provided authentication tree step.