clarin.sru.fcs.server.auth

class clarin.sru.fcs.server.auth.AuthenticationInfo(subject: str)[source]

Bases: SRUAuthenticationInfo

property authentication_method: str
property subject: str
class clarin.sru.fcs.server.auth.Key(key_id: str, public_key: cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey)[source]

Bases: object

key_id: str
public_key: RSAPublicKey
class clarin.sru.fcs.server.auth.Verifier(key_id: str, public_key: cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey, jwt: jwt.api_jwt.PyJWT, claims: Dict[str, Any])[source]

Bases: object

key_id: str
public_key: RSAPublicKey
jwt: PyJWT
claims: Dict[str, Any]
decode(token: str, no_verification: bool = False) Dict[str, Any][source]
verify(token: str) bool[source]
class clarin.sru.fcs.server.auth.AuthenticationProvider(verifiers: List[Verifier])[source]

Bases: SRUAuthenticationInfoProvider

property key_count: int
get_AuthenticationInfo(request: Request) SRUAuthenticationInfo | None[source]
class Builder[source]

Bases: object

classmethod create() Builder[source]
with_audience(audience: str) Builder[source]
with_ignore_IssuedAt() Builder[source]
with_IssuedAt(leeway: int) Builder[source]
with_ExpiresAt(leeway: int) Builder[source]
with_NotBefore(leeway: int) Builder[source]
with_public_key(key_id: str, key: Any) Builder[source]
build() AuthenticationProvider[source]