rbac
SKILL.md
rbac
RBAC (Role-Based Access Control) limita lo que puede hacer cada servicio, operador y proceso dentro del sistema KYC. En Kubernetes, el RBAC nativo controla qué pods pueden acceder a qué recursos. En la capa de aplicación, los roles controlan el acceso a las funcionalidades de revisión manual y administración.
When to use
Definir desde el inicio del proyecto. Principio de mínimo privilegio: cada servicio solo puede acceder a los recursos que necesita para su función.
Instructions
- RBAC en Kubernetes para los servicios KYC (
k8s/rbac.yaml):apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: kyc-api-role rules: - apiGroups: [""] resources: ["secrets"] resourceNames: ["kyc-db-credentials", "kyc-jwt-key"] verbs: ["get"] - apiGroups: [""] resources: ["configmaps"] verbs: ["get", "list"] --- kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: kyc-api-binding subjects: - kind: ServiceAccount name: kyc-api roleRef: kind: Role name: kyc-api-role - Roles de aplicación en FastAPI:
class UserRole(str, Enum): REVIEWER = "reviewer" # puede ver y decidir casos en revisión manual ADMIN = "admin" # puede cambiar thresholds y configuración AUDITOR = "auditor" # puede ver logs de auditoría, solo lectura API_CLIENT = "client" # solo puede iniciar sesiones KYC def require_role(required_role: UserRole): async def dependency(payload: dict = Depends(verify_jwt)): if payload.get("role") != required_role: raise HTTPException(403, "Insufficient permissions") return dependency - Aplicar en endpoints:
@app.get("/admin/thresholds", dependencies=[Depends(require_role(UserRole.ADMIN))]). - En Vault, aplicar políticas por servicio: el kyc-api solo puede leer
secret/kyc/, los workers solosecret/models/.
Notes
- El ServiceAccount de cada pod en Kubernetes debe ser diferente — no usar el ServiceAccount por defecto.
- Los cambios de thresholds de decisión deben requerir rol ADMIN y quedar registrados en el audit log.
- Revisar periódicamente (trimestral) los roles asignados — eliminar accesos que ya no son necesarios (principio de menor privilegio).
Weekly Installs
1
Repository
davidcastagnetoa/skillsFirst Seen
10 days ago
Security Audits
Installed on
mcpjam1
claude-code1
replit1
junie1
windsurf1
zencoder1