
egovio/egov-enc-serviceEncryption Service是一个轻量级Docker镜像,提供安全的数据加密、解密及密钥生命周期管理功能。该镜像旨在为各类应用系统提供便捷、可靠的加密服务,通过标准化接口简化敏感数据保护流程,支持多种主流加密算法,可快速集成到微服务、分布式系统等架构中。
通过以下命令启动Encryption Service容器:
bashdocker run -d \ --name encryption-service \ -p 8080:8080 \ -e ENCRYPTION_DEFAULT_ALGORITHM=AES-256-GCM \ -e KEY_STORAGE_VOLUME=/keys \ -v ./local-keys:/keys \ encryption-service:latest
容器启动时可通过环境变量自定义服务配置,常用参数如下:
| 环境变量名 | 描述 | 默认值 |
|---|---|---|
ENCRYPTION_DEFAULT_ALGORITHM | 默认加密算法(如AES-256-GCM、RSA-2048) | AES-256-GCM |
KEY_STORAGE_VOLUME | 密钥存储路径(容器内) | /var/lib/encryption/keys |
API_PORT | 服务监听端口 | 8080 |
LOG_LEVEL | 日志级别(DEBUG/INFO/WARN/ERROR) | INFO |
ENABLE_TLS | 是否启用TLS加密传输(true/false) | false |
TLS_CERT_PATH | TLS证书路径(需配合ENABLE_TLS=true) | /etc/encryption/tls/cert.pem |
TLS_KEY_PATH | TLS私钥路径(需配合ENABLE_TLS=true) | /etc/encryption/tls/key.pem |
以下为docker-compose.yml配置示例,适用于生产环境部署:
yamlversion: '3.8' services: encryption-service: image: encryption-service:latest container_name: encryption-service restart: unless-stopped ports: - "8080:8080" environment: - ENCRYPTION_DEFAULT_ALGORITHM=RSA-2048 - KEY_STORAGE_VOLUME=/keys - LOG_LEVEL=INFO - ENABLE_TLS=true - TLS_CERT_PATH=/tls/cert.pem - TLS_KEY_PATH=/tls/key.pem volumes: - ./encryption-keys:/keys - ./tls-cert:/tls networks: - app-network networks: app-network: driver: bridge
服务启动后可通过以下API接口进行操作(完整接口文档可访问http://<服务IP>:8080/swagger-ui查看):
加密数据
POST /api/v1/encrypt
请求体:{"data": "<明文数据>"}
响应:{"encrypted_data": "<加密后数据>", "algorithm": "AES-256-GCM", "key_id": "key-v1"}
解密数据
POST /api/v1/decrypt
请求体:{"encrypted_data": "<加密数据>", "key_id": "key-v1"}
响应:{"data": "<明文数据>"}
生成密钥
POST /api/v1/keys/generate
请求体:{"algorithm": "RSA-2048", "key_name": "payment-key"}
响应:{"key_id": "payment-key-v1", "algorithm": "RSA-2048", "created_at": "2024-05-20T10:30:00Z"}
chmod 700 ./local-keys),避免密钥泄露。/api/v1/keys/rotate接口定期轮换密钥,降低密钥泄露风险。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务