feat(auth): Complete Auth Service implementation and fix Consul health checks
- Add VerifyPassword RPC to Identity Service - Added to proto file and generated code - Implemented in Identity Service gRPC server - Added to Identity Service client interface and gRPC client - Complete RefreshToken implementation - Store refresh tokens in database using RefreshToken entity - Validate refresh tokens with expiration checking - Revoke refresh tokens on logout and token rotation - Integrate Authz Service for role retrieval - Added AuthzServiceClient to Auth Service - Get user roles during login and token refresh - Gracefully handle Authz Service failures - Require JWT secret in configuration - Removed default secret fallback - Service fails to start if JWT secret is not configured - Fix Consul health checks for Docker - Services now register with Docker service names (e.g., audit-service) - Allows Consul (in Docker) to reach services via Docker DNS - Health checks use gRPC service names instead of localhost This completes all TODOs in auth_service_fx.go and fixes the Consul health check failures in Docker environments.
This commit is contained in:
@@ -14,6 +14,7 @@ import (
|
||||
"entgo.io/ent/dialect/sql/sqlgraph"
|
||||
"git.dcentral.systems/toolz/goplt/internal/ent/auditlog"
|
||||
"git.dcentral.systems/toolz/goplt/internal/ent/permission"
|
||||
"git.dcentral.systems/toolz/goplt/internal/ent/refreshtoken"
|
||||
"git.dcentral.systems/toolz/goplt/internal/ent/role"
|
||||
"git.dcentral.systems/toolz/goplt/internal/ent/rolepermission"
|
||||
"git.dcentral.systems/toolz/goplt/internal/ent/user"
|
||||
@@ -80,6 +81,7 @@ func checkColumn(t, c string) error {
|
||||
columnCheck = sql.NewColumnCheck(map[string]func(string) bool{
|
||||
auditlog.Table: auditlog.ValidColumn,
|
||||
permission.Table: permission.ValidColumn,
|
||||
refreshtoken.Table: refreshtoken.ValidColumn,
|
||||
role.Table: role.ValidColumn,
|
||||
rolepermission.Table: rolepermission.ValidColumn,
|
||||
user.Table: user.ValidColumn,
|
||||
|
||||
Reference in New Issue
Block a user