Class tigrbl_kms.orm.key_version.KeyVersion
tigrbl_kms.orm.key_version.KeyVersion
Bases: Base
, BulkCapable
, Replaceable
id
class-attribute
instance-attribute
id = acol(
storage=S(
type_=PgUUID(as_uuid=True),
primary_key=True,
default=uuid4,
),
field=F(py_type=UUID),
io=IO(out_verbs=("read", "list")),
)
key_id
class-attribute
instance-attribute
key_id = acol(
storage=S(
type_=PgUUID(as_uuid=True),
fk=ForeignKeySpec(
target="keys.id", on_delete="CASCADE"
),
nullable=False,
index=True,
),
field=F(py_type=UUID, required_in=("create",)),
io=IO(
in_verbs=("create",),
out_verbs=("read", "list"),
filter_ops=("eq",),
),
)
version
class-attribute
instance-attribute
version = acol(
storage=S(type_=Integer, nullable=False),
field=F(py_type=int, required_in=("create",)),
io=IO(
in_verbs=("create",),
out_verbs=("read", "list"),
sortable=True,
),
)
status
class-attribute
instance-attribute
status = acol(
storage=S(
type_=SAEnum(
"active",
name="VersionStatus",
native_enum=True,
validate_strings=True,
create_constraint=True,
),
nullable=False,
),
field=F(py_type=str, required_in=("create",)),
io=IO(in_verbs=("create",), out_verbs=("read", "list")),
)
public_material
class-attribute
instance-attribute
public_material = acol(
storage=S(type_=LargeBinary, nullable=True),
io=paired(
_pair_material,
alias="public_material_b64",
verbs=("create", "update"),
),
)
key
class-attribute
instance-attribute
key = relationship(
"Key", back_populates="versions", lazy="joined"
)
metadata
class-attribute
instance-attribute
metadata = MetaData(
naming_convention={
"pk": "pk_%(table_name)s",
"fk": "fk_%(table_name)s_%(column_0_name)s_%(referred_table_name)s",
"ix": "ix_%(table_name)s_%(column_0_name)s",
"uq": "uq_%(table_name)s_%(column_0_name)s",
"ck": "ck_%(table_name)s_%(column_0_name)s_%(constraint_type)s",
}
)