summaryrefslogtreecommitdiffhomepage
path: root/example/fido-conformance.js
diff options
context:
space:
mode:
authorMatthew Miller <matthew@millerti.me>2020-07-08 21:41:29 -0700
committerMatthew Miller <matthew@millerti.me>2020-07-08 21:41:29 -0700
commited17b41ac8525aa06827ad404939274b350ad85b (patch)
tree76e3e58ae2dee9f825377de621bb27cf1f08811d /example/fido-conformance.js
parenta8dab2d372f6bf324f49164aa4da104e2fe5d1bb (diff)
Remember userVerification during assertion
Diffstat (limited to 'example/fido-conformance.js')
-rw-r--r--example/fido-conformance.js11
1 files changed, 7 insertions, 4 deletions
diff --git a/example/fido-conformance.js b/example/fido-conformance.js
index c3f05c1..592c7cf 100644
--- a/example/fido-conformance.js
+++ b/example/fido-conformance.js
@@ -44,6 +44,7 @@ const inMemoryUserDeviceDB = {
// */
// ],
// currentChallenge: undefined,
+ // currentAssertionUserVerification: undefined,
// },
};
@@ -165,6 +166,7 @@ fidoComplianceRouter.post('/assertion/options', (req, res) => {
const challenge = uuidv4();
user.currentChallenge = challenge;
+ user.currentAssertionUserVerification = userVerification;
const opts = generateAssertionOptions({
challenge,
@@ -185,12 +187,12 @@ fidoComplianceRouter.post('/assertion/result', (req, res) => {
const { id } = body;
const user = inMemoryUserDeviceDB[loggedInUsername];
+
+ // Pull up values specified when generation assertion options
const expectedChallenge = user.currentChallenge;
- const existingDevice = user.devices.find(device => device.credentialID === id);
+ const userVerification = user.currentAssertionUserVerification;
- if (!existingDevice) {
- throw new Error('Assertion device is not registered to user');
- }
+ const existingDevice = user.devices.find(device => device.credentialID === id);
let verification;
try {
@@ -200,6 +202,7 @@ fidoComplianceRouter.post('/assertion/result', (req, res) => {
expectedOrigin: origin,
expectedRPID: rpID,
authenticator: existingDevice,
+ fidoUserVerification: userVerification,
});
} catch (error) {
console.error(error.message);