feat(epic2): Implement core authentication and authorization services
- Implement Audit Service (2.5) - gRPC server with Record and Query operations - Database persistence with audit schema - Service registry integration - Entry point: cmd/audit-service - Implement Identity Service (2.2) - User CRUD operations - Password hashing with argon2id - Email verification and password reset flows - Entry point: cmd/identity-service - Fix package naming conflicts in user_service.go - Implement Auth Service (2.1) - JWT token generation and validation - Login, RefreshToken, ValidateToken, Logout RPCs - Integration with Identity Service - Entry point: cmd/auth-service - Note: RefreshToken entity needs Ent generation - Implement Authz Service (2.3, 2.4) - Permission checking and authorization - User roles and permissions retrieval - RBAC-based authorization - Entry point: cmd/authz-service - Implement gRPC clients for all services - Auth, Identity, Authz, and Audit clients - Service discovery integration - Full gRPC communication - Add service configurations to config/default.yaml - Create SUMMARY.md with implementation details and testing instructions - Fix compilation errors in Identity Service (password package conflicts) - All services build successfully and tests pass
This commit is contained in:
16
Makefile
16
Makefile
@@ -125,11 +125,23 @@ generate-proto:
|
||||
echo "protoc-gen-go-grpc not found. Install with: go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest"; \
|
||||
exit 1; \
|
||||
fi
|
||||
@mkdir -p api/proto/generated
|
||||
@mkdir -p api/proto/generated/audit/v1 api/proto/generated/auth/v1 api/proto/generated/authz/v1 api/proto/generated/identity/v1
|
||||
@protoc --go_out=api/proto/generated --go_opt=paths=source_relative \
|
||||
--go-grpc_out=api/proto/generated --go-grpc_opt=paths=source_relative \
|
||||
--proto_path=api/proto \
|
||||
api/proto/*.proto
|
||||
api/proto/audit.proto
|
||||
@protoc --go_out=api/proto/generated --go_opt=paths=source_relative \
|
||||
--go-grpc_out=api/proto/generated --go-grpc_opt=paths=source_relative \
|
||||
--proto_path=api/proto \
|
||||
api/proto/auth.proto
|
||||
@protoc --go_out=api/proto/generated --go_opt=paths=source_relative \
|
||||
--go-grpc_out=api/proto/generated --go-grpc_opt=paths=source_relative \
|
||||
--proto_path=api/proto \
|
||||
api/proto/authz.proto
|
||||
@protoc --go_out=api/proto/generated --go_opt=paths=source_relative \
|
||||
--go-grpc_out=api/proto/generated --go-grpc_opt=paths=source_relative \
|
||||
--proto_path=api/proto \
|
||||
api/proto/identity.proto
|
||||
@echo "gRPC code generation complete"
|
||||
|
||||
verify: fmt-check lint test
|
||||
|
||||
Reference in New Issue
Block a user