basically finish superuser key api
This commit is contained in:
parent
35ed73e195
commit
aaf9e83278
3 changed files with 34 additions and 25 deletions
|
@ -46,7 +46,7 @@ def _validate_jwt(encoded_jwt, jwk, service):
|
|||
abort(400)
|
||||
|
||||
|
||||
def _signer_jwk(encoded_jwt, jwk, service, kid):
|
||||
def _signer_jwk(encoded_jwt, jwk, kid):
|
||||
decoded_jwt = jwt.decode(encoded_jwt, verify=False)
|
||||
|
||||
signer_kid = decoded_jwt.get('signer_kid', '')
|
||||
|
@ -55,7 +55,7 @@ def _signer_jwk(encoded_jwt, jwk, service, kid):
|
|||
return jwk
|
||||
else:
|
||||
try:
|
||||
service_key = data.model.service_keys.get_service_keys(service, kid=signer_kid)
|
||||
service_key = data.model.service_keys.get_service_key(signer_kid)
|
||||
except data.model.ServiceKeyDoesNotExist:
|
||||
abort(404)
|
||||
|
||||
|
@ -69,8 +69,8 @@ def get_service_keys(service):
|
|||
|
||||
|
||||
@key_server.route('/services/<service>/keys/<kid>', methods=['GET'])
|
||||
def get_service_key(service, kid):
|
||||
key = data.model.service_keys.get_service_keys(service, kid=kid)
|
||||
def get_service_key(kid):
|
||||
key = data.model.service_keys.get_service_key(kid)
|
||||
return jsonify(key.jwk)
|
||||
|
||||
|
||||
|
@ -94,7 +94,7 @@ def put_service_keys(service, kid):
|
|||
if not encoded_jwt:
|
||||
abort(400)
|
||||
|
||||
signer_jwk = _signer_jwk(encoded_jwt, jwk, service, kid)
|
||||
signer_jwk = _signer_jwk(encoded_jwt, jwk, kid)
|
||||
_validate_jwt(encoded_jwt, signer_jwk, service)
|
||||
|
||||
metadata = {
|
||||
|
@ -104,7 +104,7 @@ def put_service_keys(service, kid):
|
|||
|
||||
|
||||
try:
|
||||
data.model.service_keys.update_service_key('', kid, service, metadata, expiration_date)
|
||||
data.model.service_keys.update_service_key('', kid, metadata, expiration_date)
|
||||
except data.model.ServiceKeyDoesNotExist:
|
||||
data.model.service_keys.create_service_key('', kid, service, jwk, metadata, expiration_date)
|
||||
|
||||
|
@ -115,7 +115,7 @@ def delete_service_key(service, kid):
|
|||
if not encoded_jwt:
|
||||
abort(400)
|
||||
|
||||
signer_jwk = _signer_jwk(encoded_jwt, None, service, kid)
|
||||
signer_jwk = _signer_jwk(encoded_jwt, None, kid)
|
||||
_validate_jwt(encoded_jwt, signer_jwk, service)
|
||||
|
||||
try:
|
||||
|
|
Reference in a new issue