1
0
forked from baron/baron-sso
Commit Graph

176 Commits

Author SHA1 Message Date
31d107ff2e feat(user): support fixed UUID registration and enhance bulk import results
- Added support for fixed UUIDs during bulk registration (Search-first + ExternalID mapping)
- Implemented idempotency and visibility restoration for soft-deleted users
- Enhanced bulk upload UI to show 'New/Updated/Unchanged' status and modified fields
- Added logic to reclaim identifiers (login_id) from colliding records
- Added frontend E2E and backend unit tests for UUID integrity and conflict handling
- Fixed i18n, formatting, and mock tests to satisfy code-check
- Applied 'go fix' for 'omitzero' tags and general Go standards
2026-06-01 15:34:08 +09:00
62b1938c42 refactor: 보조 이메일 키값을 sub_email로 통일 및 수동 폼 추가 (#917)
- `secondary_emails` 대신 `sub_email`을 키값으로 사용하도록 전면 수정
- 관리자 화면의 수동 사용자 생성(Create) 및 수정(Detail) 폼에 `sub_email` 입력 필드 추가
- CSV 템플릿의 컬럼명을 `sub_email`로 변경
- 백엔드의 Kratos Traits 조회 및 배열 추출 로직을 `sub_email` 기준으로 업데이트
- E2E 테스트(`users_bulk.spec.ts`, `users_bulk_secondary.spec.ts`)에서 `sub_email` 검증하도록 수정 및 통과 확인
2026-05-29 11:07:59 +09:00
6e610c553f feat: 사용자 벌크 CSV 등록 시 보조 이메일 지원 (#917)
- `adminfront` CSV 템플릿 헤더에 `secondary_emails` 추가 및 예시 반영
- `adminfront` CSV 파서(`csvParser.ts`)에서 `secondary_emails` 추출 로직 보강
- `backend` 에서 `BulkCreateUsers`, `UpdateUser` 실행 시 보조 이메일을 포함한 모든 이메일에 대해 식별자 유효성(ValidateLoginID) 검사 수행
- `domain.ValidateLoginID`의 파라미터를 복수 이메일 처리를 위해 `[]string`으로 변경
- Playwright E2E 테스트 `users_bulk_secondary.spec.ts` 신규 작성 및 테스트 패스 확인
2026-05-29 10:39:24 +09:00
f19b694c0b fix auth link session conflict policy 2026-05-21 13:50:18 +09:00
42b49674cc 사용자 상태 세분화 2026-05-20 10:17:15 +09:00
f6f8e88342 refactoring 2026-05-14 08:11:02 +09:00
e36a973053 사용자 테넌트 소속 데이터 정리 2026-05-13 18:27:55 +09:00
8c2b2f71ef 조직도 M2M조회 추가, 자동로그인 보완 2026-05-13 13:44:30 +09:00
3063450ee0 조직현황 구조변경. 총괄센터삼안 실 조직 삽입확인 2026-05-11 20:14:56 +09:00
843b4100ad adminfront 조직 통계오류 보정. Kratos Projection용 통계테이블 구조 추가 2026-05-11 13:01:55 +09:00
57a00c0236 Fix SMS login code flow for phone relay 2026-05-07 13:53:47 +09:00
13dee9ae9b adminfront 개요 통계 추가 2026-05-06 16:14:52 +09:00
kyy
128ac94575 code check 오류 수정 2026-05-04 13:17:40 +09:00
kyy
f9f0ed0f14 OIDC back-channel logout 백엔드 전송 기능 추가 2026-05-04 11:31:50 +09:00
kyy
0844befb35 devfront ID Token Claims 백엔드 반영 2026-05-04 11:19:37 +09:00
3dcdd97882 org chart 자동로그인 보완. seed-tenant 삭제불가 조치 2026-04-30 17:02:24 +09:00
6eb4c293ff Keep orgfront auto login fallback explicit 2026-04-30 16:41:32 +09:00
f7e4d43b16 Implement tenant import and RP auto login policies 2026-04-30 15:45:34 +09:00
kyy
955128a25a 테넌트 접근 제한 로직 보강 2026-04-28 13:24:11 +09:00
kyy
367368805a 테넌트 접속 제한 백엔드 로직 수정 2026-04-28 13:24:11 +09:00
kyy
3f85f6cfe3 RP 테넌트 접근 정책 변경 시 기존 consent 자동 폐기 2026-04-28 13:24:11 +09:00
kyy
d86c4111ad RP 테넌트 제한 backend 구현 2026-04-28 13:24:11 +09:00
kyy
081cd6739a backend code-check 오류 수정 2026-04-24 14:59:40 +09:00
kyy
7fd750b587 consent 자동 승인 경로 tenantID 전달 누락 수정 2026-04-24 14:51:13 +09:00
kyy
26180ae5d1 consent 2차 검증 추가 2026-04-24 14:38:52 +09:00
f810427b21 chore(auth): restrict OIDC generated claims debug logs to dev environment
- Prevent overly verbose logging of ID token payloads in production by checking APP_ENV
2026-04-24 12:00:00 +09:00
cfba44cec2 feat: support dynamic multi-tenant OIDC claims injection (#609)
- Inject  claim based on OIDC Client metadata
- Extract namespaced tenant metadata from traits and flatten it to root
- Expose all joined tenants metadata under  and  arrays
- Fix missing AuditLog generation during auto-accepted Consent
- Associate correct  during auth events AuditLog recording
- Add unit and integration tests for dynamic claims
2026-04-23 17:59:21 +09:00
0f79b7635b fix: resolve OIDC session state issue and synchronize portal sessions
Details:
- Backend: Extract Kratos session cookies and propagate via SetCookies in AuthInfo.
- Backend: Include sessionJwt and token during OIDC flows in PasswordLogin.
- UserFront: Add _silentSessionRecovery in main.dart to recover session via cookies if localStorage token is missing.
- UserFront: Update AuthProxyService, AuthTokenStore, AuthNotifier to support silent recovery and immediate local state update before redirect.
- AdminFront/DevFront: Fix OIDC authority to point directly to Gateway proxy and add recovery/error UI components.
2026-04-21 14:10:27 +09:00
kyy
141c8e0ab5 dev 브런치 반영 code-check 오류 수정 2026-04-20 16:34:04 +09:00
001f29ca5f Merge pull request 'feature/org-chart-tab-separation' (#568) from feature/org-chart-tab-separation into dev
Reviewed-on: baron/baron-sso#568
2026-04-16 09:08:48 +09:00
726ac71214 fix(user): preserve multi-tenant companyCodes and fix Kratos code parsing
- UpdateUser: Implement 'Preserve & Merge' logic to fetch existing joined
  tenants from Keto and merge them with UI requests, preventing the
  loss of multi-tenant affiliations.
- Keto Sync: Expand the self-healing background job to iterate over all
  companyCodes, ensuring 'members' relations are created for every
  joined tenant (fixes #554).
- AuthHandler: Update extractFirstString to gracefully handle numeric
  JSON types, fixing an issue where Kratos login codes were lost during
  Courier webhook processing.
2026-04-15 16:01:31 +09:00
kyy
24208893d6 headless link login 애플리케이션 표시 2026-04-14 16:28:01 +09:00
kyy
92f8e9a61a headless password login 접속 이력 반영 2026-04-14 16:28:01 +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
1524da2d6a 세션 종료 시 Hydra 토큰 세션도 함께 무효화 2026-04-06 15:02:42 +09:00