skillhub/server
vsxd 5c4be0a26f feat(auth): add OAuth2 login, access policy, API token, and RBAC
Task 10b: OAuth Claims + Access Policy
- OAuthClaims record, OAuthClaimsExtractor SPI, GitHubClaimsExtractor
- AccessPolicy SPI with Open/EmailDomain/ProviderAllowlist/SubjectWhitelist
- AccessPolicyFactory with config-driven strategy selection
- 8 unit tests for access policies

Task 11: Identity binding + OAuth2 user service
- PlatformPrincipal session-serializable record
- IdentityBindingService: bind-or-create on OAuth login
- CustomOAuth2UserService: policy evaluation + identity binding
- OAuth2LoginSuccessHandler: store principal in session

Task 12: API Token + RBAC
- ApiTokenService: SHA-256 hashed token create/validate/revoke
- ApiTokenAuthenticationFilter: Bearer token authentication
- RbacService: role/permission queries with SUPER_ADMIN bypass
2026-03-11 23:48:16 +08:00
..
.mvn/wrapper feat: initialize Maven multi-module project structure 2026-03-11 22:52:04 +08:00
skillhub-app feat: complete Chunk 1 - backend skeleton and infrastructure 2026-03-11 23:35:47 +08:00
skillhub-auth feat(auth): add OAuth2 login, access policy, API token, and RBAC 2026-03-11 23:48:16 +08:00
skillhub-domain feat(domain/infra/auth): add domain entities, JPA repos, and auth entities 2026-03-11 23:42:53 +08:00
skillhub-infra feat(domain/infra/auth): add domain entities, JPA repos, and auth entities 2026-03-11 23:42:53 +08:00
skillhub-search feat: complete Chunk 1 - backend skeleton and infrastructure 2026-03-11 23:35:47 +08:00
skillhub-storage feat: complete Chunk 1 - backend skeleton and infrastructure 2026-03-11 23:35:47 +08:00
mvnw feat: initialize Maven multi-module project structure 2026-03-11 22:52:04 +08:00
mvnw.cmd feat: initialize Maven multi-module project structure 2026-03-11 22:52:04 +08:00
pom.xml feat: complete Chunk 1 - backend skeleton and infrastructure 2026-03-11 23:35:47 +08:00