canonicalize json
This commit is contained in:
parent
f406942984
commit
97ae800e6c
3 changed files with 36 additions and 16 deletions
|
@ -5,7 +5,6 @@ import logging
|
|||
import os
|
||||
import string
|
||||
|
||||
from collections import OrderedDict
|
||||
from datetime import datetime
|
||||
from hashlib import sha256
|
||||
from random import SystemRandom
|
||||
|
@ -27,6 +26,7 @@ from endpoints.api import (ApiResource, nickname, resource, validate_json_reques
|
|||
from endpoints.api.logs import get_logs, get_aggregate_logs
|
||||
from data import model
|
||||
from data.database import ServiceKeyApprovalType
|
||||
from util import canonicalize
|
||||
from util.useremails import send_confirmation_email, send_recovery_email
|
||||
|
||||
|
||||
|
@ -543,9 +543,7 @@ class SuperUserServiceKeyManagement(ApiResource):
|
|||
|
||||
private_key = RSA.generate(2048)
|
||||
jwk = RSAKey(key=private_key.publickey()).serialize()
|
||||
canonical_jwk = OrderedDict(sorted(jwk.items()))
|
||||
kid = sha256(json.dumps(canonical_jwk)).hexdigest()
|
||||
|
||||
kid = sha256(json.dumps(canonicalize(jwk), separators=(',', ':'))).hexdigest()
|
||||
|
||||
model.service_keys.create_service_key(body.get('name', ''), kid, body['service'], jwk,
|
||||
metadata, expiration_date)
|
||||
|
|
Reference in a new issue