refactor: encryption

This commit is contained in:
Yeuoly 2024-09-26 14:51:10 +08:00
parent 1d575524c3
commit 4c28034224
No known key found for this signature in database
GPG Key ID: A66E7E320FB19F61
2 changed files with 30 additions and 4 deletions

View File

@ -16,7 +16,16 @@ class PluginEncrypter:
provider_identity=payload.identity,
)
if payload.opt == "encrypt":
return encrypter.encrypt(payload.data)
else:
return encrypter.decrypt(payload.data)
try:
if payload.opt == "encrypt":
return {
"data": encrypter.encrypt(payload.data),
}
else:
return {
"data": encrypter.decrypt(payload.data),
}
except Exception as e:
return {
"error": str(e),
}

View File

@ -1,11 +1,28 @@
from collections.abc import Mapping
from datetime import datetime
from pydantic import BaseModel, Field
from core.entities.provider_entities import ProviderConfig
from core.plugin.entities.base import BasePluginEntity
class EndpointDeclaration(BaseModel):
"""
declaration of an endpoint
"""
settings: Mapping[str, ProviderConfig] = Field(default_factory=Mapping)
class EndpointEntity(BasePluginEntity):
"""
entity of an endpoint
"""
settings: dict
hook_id: str
tenant_id: str
plugin_id: str
expired_at: datetime
declaration: EndpointDeclaration = Field(default_factory=EndpointDeclaration)