fix deviceId computing in dpop challenge

This commit is contained in:
beltram
2023-05-05 15:39:40 +02:00
committed by Herman Slatman
parent 5ceed08ae0
commit ff41a1193d

View File

@@ -471,12 +471,20 @@ func wireDPOP01Validate(ctx context.Context, ch *Challenge, db DB, jwk *jose.JSO
return WrapErrorISE(err, "error unmarshalling challenge data")
}
issuer := dpopOptions.GetDPOPTarget()
clientID, err := wire.ParseClientID(challengeValues.ClientID)
if err != nil {
return WrapErrorISE(err, "error parsing device id")
}
issuer, err := dpopOptions.GetTarget(clientID.DeviceID)
if err != nil {
return WrapErrorISE(err, "Invalid Go template registered for 'target'")
}
expiry := strconv.FormatInt(time.Now().Add(time.Hour*24*365).Unix(), 10)
cmd := exec.CommandContext(
ctx,
provisioner.GetOptions().GetDPOPOptions().GetValidationExecPath(),
dpopOptions.GetValidationExecPath(),
"verify-access",
"--client-id",
challengeValues.ClientID,