1
0
forked from baron/baron-sso
Commit Graph

366 Commits

Author SHA1 Message Date
ea44785ef0 feat: expand manageableSlugs to include entire tenant tree for users
Allows users and tenant admins to view users across all tenants within their hierarchy (both parent and child organizations) instead of just their direct tenant.
2026-04-13 10:51:29 +09:00
d3a82d1653 feat: allow regular users to view their own tenant's org chart
Changes the /users endpoint to allow RoleUser access and securely restricts the returned data to only users within their affiliated tenants. Removes the unnecessary back button from the Org Chart view since it's now a top-level nav item.
2026-04-13 10:47:56 +09:00
ea90327507 fix(tests): resolve failing go tests and segfaults due to missing mock interface implementations
- MockKratosAdminService 및 MockTenantService에 새로 추가된 인터페이스 메소드(CreateUser, ListIdentitySessions 등) 구현 추가
- 회원가입 테스트(auth_handler_signup_test.go) 시, isAffiliateTenant 검증 과정에서 TenantService가 nil일 때 발생하는 segfault 방지 로직 보강
- Mock 객체 반환값 타입 불일치 및 testify/mock 매개변수 에러 등 테스트 의존성 전반 수정
2026-04-10 14:40:16 +09:00
5a84e9f6cc Merge branch 'dev' into fix/rebac-env-sync-issue 2026-04-10 13:52:07 +09:00
5211842d47 조직도 기능 추가 2026-04-10 11:38:47 +09:00
kyy
2ef851086d headless URL 호스트 해석 보정 2026-04-10 10:57:38 +09:00
kyy
06a6875cdb App 카드 로고 이미지 표시 2026-04-09 14:37:49 +09:00
kyy
f5c4ffa92f linked RP 응답에 1st-party 앱 자동 로그인 init_url 추가 2026-04-09 14:37:49 +09:00
kyy
9e473ae8a8 userfront 접속이력 타임라인 oathkeeper 세션 ID 보강 2026-04-07 16:07:40 +09:00
kyy
763c04398e 접속이력 OIDC 접속 로그 누락 수정 2026-04-07 16:07:40 +09:00
b3a7f47cf7 feat(auth): lock affiliation type on frontend based on verified email domain (#500) 2026-04-07 14:03:02 +09:00
4e7f3e7235 feat(auth): enforce explicit tenant selection and dynamic filtering (#500)
- Refactor `GetActiveTenants` to filter dynamically based on the email domain, removing hardcoded affiliate slugs.
- Update `Signup` to require an explicit `CompanyCode` choice for internal domains, removing automatic provisioning and implicit tenant assignment.
- Add markdown diagram detailing the revised, secure B2B2B dynamic provisioning and inheritance flow.
2026-04-07 11:58:50 +09:00
332ac9c0d8 feat: dynamic frontend tenant dropdown 2026-04-06 16:56:33 +09:00
c78604df06 feat: implement dynamic tenant provisioning and remove hardcoded company mappings 2026-04-06 16:13:03 +09:00
kyy
1b8dc2c4ab dev 브런치 병합 후 code check 2026-04-06 16:03:49 +09:00
kyy
890ddd9b3c 세션 종료 시 모든 세션 종료 에러 수정 2026-04-06 15:02:42 +09:00
kyy
2ca26cafb2 세션 IP 표시와 로그아웃 처리 보강 2026-04-06 15:02:42 +09:00
kyy
8942c78fb4 활서 세션 카드 audit 메타데이터 기록 보강 2026-04-06 15:02:42 +09:00
kyy
fe70fd216b 세션 카드 디버그용 시나리오 및 테스트 추가 2026-04-06 15:02:42 +09:00
kyy
1524da2d6a 세션 종료 시 Hydra 토큰 세션도 함께 무효화 2026-04-06 15:02:42 +09:00
kyy
a2f2b2dd71 사용자 활성 세션 조회·종료 API 추가 2026-04-06 15:02:41 +09:00
583755c189 fix: improve keto sync reliability and initial rebac permissions for super admin 2026-04-06 10:10:27 +09:00
95aba376b1 chore: fix workspace formatting (devfront, backend, adminfront) 2026-04-03 15:12:27 +09:00
b582c82c6f feat: implement multi-identifier architecture (Issue #496)
- Database: Add user_login_ids table for 1:N identifier mapping and remove legacy login_id column
- Kratos: Update identity schema to use custom_login_ids array instead of a single id trait
- Backend: Implement syncCustomLoginIDs to collect isLoginId fields across tenant schemas
- Backend: Add backtracking logic to auto-assign session tenant based on used login identifier
- Backend: Add 409 Conflict exception handling for Create/Update operations
- AdminFront: Refactor UserDetailPage to a tabbed grid layout (Info, Tenants, Security)
- AdminFront: Show '로그인 ID' badge on tenant schema fields used for authentication
- UserFront: Remove legacy optional 'Login ID' input from signup flow
- Tests: Add multi-identifier repository tests and update handler tests
2026-04-02 16:07:33 +09:00
Lectom C Han
71a006cd7b fix(headless-login): honor public base url for audience checks
- resolve headless audience against BACKEND_PUBLIC_URL first
- keep forwarded header support for https absolute audiences
- add regression tests for https success and http mismatch rejection
- write BACKEND_PUBLIC_URL into staging workflow env generation
2026-04-01 21:05:41 +09:00
Lectom C Han
4b0fbdde98 레포 업데이트 2026-04-01 20:32:09 +09:00
Lectom C Han
8bab8d44cc chore(headless-login): add request correlation logs 2026-04-01 19:42:09 +09:00
Lectom C Han
c3ae316570 fix(headless-login): simplify jwks policy checks 2026-04-01 19:24:26 +09:00
Lectom C Han
51f09bf53c fix(headless-login): show full parsed jwks key values
- return the full RSA n value in parsedKeys responses
- render parsed key fields with labels and multiline key material in DevFront
- lock the behavior with backend and Playwright regression tests
2026-04-01 18:51:39 +09:00
Lectom C Han
9facd24a00 feat(headless-login): add jwks cache visibility and refresh flow
- replace inline headless jwks support with jwksUri-only validation
- add cached jwks refresh worker, manual refresh/revoke endpoints, and parsed key summaries
- expose allowed algorithms and key previews in DevFront with regression coverage
2026-04-01 18:33:22 +09:00
kyy
d9e8fee64b dev 브런치 병합 code-check 오류 수정 2026-04-01 15:06:46 +09:00
kyy
8d505cec0e Headless Login 앱 타입 오표기 수정 2026-04-01 14:47:35 +09:00
ded1e1f5c4 fix(backend): fix merge conflict artifact and undefined explicitLoginID in UserHandler 2026-04-01 13:45:56 +09:00
634f869a84 Merge branch 'dev' into feat/id_login 2026-04-01 13:40:45 +09:00
fdffeacf50 fix(backend): fix loginIdField not being synced when companyCode is empty 2026-04-01 13:13:26 +09:00
54a853a5c6 fix(backend): fix syncLoginID to allow fields named 'id' to be synced from custom schema 2026-04-01 13:03:39 +09:00
27a7d226eb fix(backend): map Kratos traits id to loginId in UserSummary API response 2026-04-01 11:29:13 +09:00
Lectom C Han
94362bf8eb headless login으로 리펙토링 2026-04-01 10:50:31 +09:00
6b30580f36 fix(backend): force keto outbox sync on explicit tenant assignment to self-heal missing relations 2026-03-31 17:51:53 +09:00
bc73b85909 feat(backend): auto-sync user group keto relation based on department in user update 2026-03-31 13:50:23 +09:00
5029b8049b fix(backend): prevent duplicate key constraint on empty login id when syncing users 2026-03-31 13:11:32 +09:00
kyy
e927fa8ea0 dev 반영 code-check 오류 수정 2026-03-31 13:03:16 +09:00
kyy
68114eea66 비밀번호 재설정 중복 완료 요청 문제 수정 2026-03-31 11:51:21 +09:00
kyy
2364ff59d2 관리자 비밀번호 변경을 Kratos 해시 업데이트 방식으로 수정 2026-03-31 11:49:47 +09:00
Lectom C Han
33afe1eddf fix(auth): separate pkce and headless trusted rp config 2026-03-31 10:44:04 +09:00
Lectom C Han
b4342b355f feat(auth): add trusted rp headless login flows 2026-03-30 21:46:15 +09:00
Lectom C Han
45dfaf5905 fix(dev): persist trusted rp secret after update
- store client_secret after trusted RP update responses
- add regression test for secret recovery on later detail fetch
2026-03-30 21:13:22 +09:00
kyy
c96a5350a7 code-check 오류 수정 2026-03-30 13:29:36 +09:00
kyy
cfe97ecb1e Trusted RP 생성 흐름 테스트 추가 2026-03-30 13:08:10 +09:00
kyy
3ffc345c2c RP 공개키 등록 및 Trusted RP 판정 로직 구현 2026-03-30 09:20:48 +09:00