security¶
alchemiscale.security.auth — security components for API services¶
- alchemiscale.security.auth.authenticate(db, cls, identifier: str, key: str) CredentialedEntity | None¶
Authenticate the given identity+key against the db instance.
- Parameters:
db – State store instance featuring a get_credentialed_entity method.
cls – The CredentialedEntity subclass the identity corresponds to.
identity – String identifier for the the identity.
key – Secret key string for the identity.
- Returns:
If successfully authenticated, returns the CredentialedEntity subclass instance.
If not, returns None.
alchemiscale.security.models — data models for security components¶
- class alchemiscale.security.models.ComputeIdentity(*args: Any, **kwargs: Any)¶
Bases:
ScopedIdentity
- class alchemiscale.security.models.CredentialedComputeIdentity(*args: Any, **kwargs: Any)¶
Bases:
ComputeIdentity,CredentialedEntity
- class alchemiscale.security.models.CredentialedEntity(*args: Any, **kwargs: Any)¶
Bases:
BaseModel
- class alchemiscale.security.models.CredentialedUserIdentity(*args: Any, **kwargs: Any)¶
Bases:
UserIdentity,CredentialedEntity
- class alchemiscale.security.models.ScopedIdentity(*args: Any, **kwargs: Any)¶
Bases:
BaseModel
- class alchemiscale.security.models.Token(*args: Any, **kwargs: Any)¶
Bases:
BaseModel
- class alchemiscale.security.models.TokenData(*args: Any, **kwargs: Any)¶
Bases:
BaseModel
- class alchemiscale.security.models.UserIdentity(*args: Any, **kwargs: Any)¶
Bases:
ScopedIdentity