Esempio n. 1
0
def fetch_entity(fetch_endpoint, iss, sub, iss_entity_statement):
    _response = requests.request("GET", fetch_endpoint, verify=False,
                                 params={'iss': iss, 'sub': sub})
    _jws = factory(_response.text)
    _key_jar = KeyJar()
    _key_jar.import_jwks(iss_entity_statement['jwks'], iss)
    _keys = _key_jar.get_jwt_verify_keys(_jws.jwt)
    _res = _jws.verify_compact(keys=_keys)
    return _res
Esempio n. 2
0
def get_self_signed_entity_statement(entity_id):
    _url = entity_id + "/.well-known/openid-federation"
    _response = requests.request("GET", _url, verify=False)
    _jws = factory(_response.text)
    _payload = _jws.jwt.payload()
    entity_statement = EntityStatement(**_payload)
    _key_jar = KeyJar()
    # verify  entity_statement["iss"]
    _key_jar.import_jwks(entity_statement['jwks'], entity_id)
    _keys = _key_jar.get_jwt_verify_keys(_jws.jwt)
    _res = _jws.verify_compact(keys=_keys)
    return _res