1
0
forked from baron/baron-sso
Commit Graph

75 Commits

Author SHA1 Message Date
kyy
94db1dab08 세션 만료 임계값 5분->10분 조정 2026-05-08 15:31:21 +09:00
b540482bf5 Merge remote-tracking branch 'origin/dev' into fix/issue-637 2026-05-07 13:53:14 +09:00
c398237c35 feat: enhance multi-tenant UI and fix member aggregation
- adminfront: Update TenantListPage and UserListPage sorting logic to support all columns dynamically
- adminfront: Add inline 'Move', 'Remove', and 'Delete' actions directly inside the Tenant Org Chart member table
- adminfront: Remove redundant 'ACTIONS' column and profile icon from UserListPage, making the name clickable
- adminfront: Remove 'New Member' creation link from Tenant Org Chart 'Add Member' dropdown
- backend: Fix CountByCompanyCodes query to accurately aggregate user counts using both primary company_code and company_codes array
2026-05-07 13:50:13 +09:00
13dee9ae9b adminfront 개요 통계 추가 2026-05-06 16:14:52 +09:00
5f9a61de98 feat: implement multi-tenant member management and UI improvements
- Add multi-tenant support (isAddTenant, isRemoveTenant) to backend UpdateUser API.
- Update UserRepository to support searching in company_codes array.
- Implement table sorting and align search bar layout in adminfront.
- Add 'Assign Existing Member' and 'Exclude from Organization' features to TenantUsersPage.
- Auto-populate tenantSlug in UserCreatePage via query parameters.
- Add necessary localization keys for new UI elements.

Resolves #644, #639, #642, #641
2026-05-06 14:20:35 +09:00
6cdd0fd81e worksmobile 관리화면 보완. 2026-05-06 10:37:34 +09:00
2495fcb13d worksmobile 연동 & ory stack 26.2.0으로 업그레이드 2026-05-06 09:30:00 +09:00
f7e4d43b16 Implement tenant import and RP auto login policies 2026-04-30 15:45:34 +09:00
01e7b15c46 org chart 연동기능 추가 2026-04-29 21:00:51 +09:00
7f955e2122 style: fix formatting issues caught by biome in adminfront 2026-04-21 17:11:08 +09:00
4427ab1f85 fix: resolve admin session infinite reload loop and sync auth state
- Prevent infinite redirection loop by clearing oidc-client user state on 401 errors.
- Sync apiClient request interceptor to use userManager.getUser() for reliable token retrieval.
- Add extensive console logs for better session issue diagnosis.
- Fix TS error in LoginPage by updating button variant.
- Revert 'ae03fe1' (updated playwright fixtures to real domain) as requested.
2026-04-21 17:06:03 +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
ec0c6eae26 fix(adminfront): resolve typescript build errors on CI
- Fix missing position and jobTitle properties in BulkUserItem interface
- Fix incorrect reference to undefined total property in AuditLogsPage (reverted to logs.length)
2026-04-10 14:43:56 +09:00
5a84e9f6cc Merge branch 'dev' into fix/rebac-env-sync-issue 2026-04-10 13:52:07 +09:00
349cdf5fcd feat(org): 조직도 렌더링 및 동기화 로직 대폭 개선, 역할(Role) 강제화, 탭 정리
- 조직도 렌더링 시 너비 동적 계산 및 스크롤 문제 해결
- 하위 조직(Leaf)을 부모 박스 내부에 임베딩하여 2열로 깔끔하게 표시되도록 조직도 UI 전면 개편
- 사용자 생성/수정 및 CSV 업로드 시 직급(Position)과 직무(JobTitle)가 정상적으로 Kratos 및 로컬 DB에 동기화되도록 백엔드 API 수정
- CSV 조직도 업로드 시 계층 구분을 '/' 대신 ' > '로 변경하여 이름에 '/'가 포함된 부서(예: 평면/셀)가 분리되지 않도록 보호
- 잘못 입력된 과거 직책 데이터(팀장, 그룹장 등)를 'user' 권한으로 일괄 초기화하고, 이후 'role' 필드에 시스템 권한(user, tenant_admin, super_admin) 외의 값이 들어오지 않도록 백엔드 정규화 로직 강화
- 사용자 목록 페이지의 페이지네이션 제한을 50명에서 1000명으로 상향 조정
- 테넌트 목록 페이지에 이름/슬러그 기반 검색 기능 추가
- 관리자 UI 전반에서 불필요한 배지(Admin only, System 등) 제거 및 테넌트 상세 페이지의 미사용 '외부 연동' 탭 삭제
2026-04-10 13:48:12 +09:00
5211842d47 조직도 기능 추가 2026-04-10 11:38:47 +09:00
kyy
6a3bb19e7d 세션 만료 관리 토글 동작을 실제 정책에 맞게 분리 2026-04-06 15:02:42 +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
kyy
e5ebd26182 local 브런치 code-check 오류 수정 2026-04-01 14:47:35 +09:00
kyy
391773ac90 adminfront/devfront 세션 만료 관리 슬라이딩 갱신 로직 추가 2026-04-01 14:47:35 +09:00
kyy
32a0efbf1b adminfront/devfront 상단바 프로필 메뉴 UI 통일 2026-04-01 14:47:35 +09:00
634f869a84 Merge branch 'dev' into feat/id_login 2026-04-01 13:40:45 +09:00
5502e35dc5 chore(adminfront): fix any types and biome lint errors in adminApi.ts 2026-04-01 13:22:11 +09:00
a5fdeabd09 fix: resolve tenant user assignment bug (#490)
- Fix frontend payload mapping (tenantSlug -> companyCode) in adminApi.ts.
- Fix backend group member fetching to avoid dummy members in UserGroupService.List.
- Fix backend foreign key violation on group creation by distinguishing between tenant parent and group parent in UserGroupService.Create.
2026-04-01 11:19:09 +09:00
kyy
2364ff59d2 관리자 비밀번호 변경을 Kratos 해시 업데이트 방식으로 수정 2026-03-31 11:49:47 +09:00
c244917737 fix: adminfront utils.ts 내 generateSecurePassword 함수 추가 2026-03-25 15:46:11 +09:00
d10f80d41d feat: 커스텀 필드 기반 로그인 ID 연동 기능 추가 (#440)
- Kratos Identity 스키마에 로그인 전용 `id` 속성 추가
- 테넌트 Config의 `loginIdField` 설정에 따라 User의 `login_id` 및 Kratos `traits.id` 동기화 로직 구현
- Admin UI 테넌트 스키마 설정 내 '로그인 ID로 사용' 체크박스 추가
- Admin UI 사용자 생성/수정/조회 화면에 로그인 ID 관리 필드 및 컬럼 반영
- Userfront 로그인 화면 접속 시 테넌트 설정에 따라 동적 로그인 ID 라벨 적용
- 관련 다국어(ko/en) 번역 추가 및 로그인 ID 설계 문서 업데이트
2026-03-25 15:27:44 +09:00
ddef0f7f05 레거시 수정 2026-03-24 16:37:47 +09:00
a4f283e4e6 #445 #430 #426 #427 2026-03-24 14:22:05 +09:00
b0e18cc724 refactor(adminfront): rename legacy companyCode to tenantSlug across frontend (#426) 2026-03-23 16:59:05 +09:00
d305398326 Playwright 테스트 오류 수정 2026-03-18 09:05:50 +09:00
42f0caa6fd 폼 선택자(Form Selector) 안정화, 다국어 번역 키 불일치 수정, 컴포넌트 테스트 용이성(Testability) 개선, Strict Mode 위반 해결, OIDC 모킹(Mocking) 강화 2026-03-17 15:48:48 +09:00
45ae1bb1c0 린트 적용 2026-03-05 17:50:34 +09:00
3113fc09ff 내정보 멀티 테턴트 표시 2026-03-05 17:18:49 +09:00
9720b77898 feat: implement user data CSV export with dynamic metadata columns 2026-03-04 15:54:11 +09:00
a5102d9b25 feat: implement bulk user actions and organization tree search with auto-expansion 2026-03-04 15:43:00 +09:00
6506bd192d fix(adminfront): remove duplicate importOrgChart declaration (again) 2026-03-04 14:47:36 +09:00
9ac99d2e0c feat: implement CSV-based organization chart import and enhance group hierarchy 2026-03-04 14:20:49 +09:00
7c28bd4867 feat: implement CSV bulk user upload functionality 2026-03-04 11:26:37 +09:00
1c3985ce19 feat(adminfront): add user profile dropdown and enhance session sync 2026-03-03 12:56:57 +09:00
86ef9c6f60 테넌트 소유자, 관리자 분리 2026-03-03 12:38:27 +09:00
f97b989455 테넌트 crud 테스트 코드 추가 2026-02-27 11:28:39 +09:00
f02ba3cbbd 계층 표시 테스트 코드 추가 2026-02-27 10:52:11 +09:00
ca45a14bae 테넌트 목록 및 조직 계층 구조 개선 2026-02-27 10:29:15 +09:00
600961f33d slug 명칭 한글 수정 2026-02-25 14:17:45 +09:00
6a7676f95c af 린트 적용 2026-02-24 11:02:30 +09:00
1c6fb4ef83 feat(adminfront): Implement hierarchical tree view for user group management (Issue #296)\n\n- Refactor TenantGroupsPage.tsx to display user groups in a collapsible tree structure.\n- Add buildGroupTree utility and UserGroupTreeNode recursive component.\n- Update group creation form with parent group selection and unit type.\n- Enhance mutation callbacks with toast notifications for better user feedback.\n- Fix: Add parentId to TenantSummary type in adminApi.ts for type safety. 2026-02-23 13:58:34 +09:00
0ccd1db649 test: 프론트엔드/백엔드 테스트 커버리지 및 시나리오 보강 (Issue #291)
- FE: Vitest 환경 구축 및 공통 UI 컴포넌트(Badge, Button) 테스트 추가
- FE: Playwright E2E 테스트(Auth, Tenant CRUD 및 Validation) 시나리오 보강
- BE: Testcontainers 기반 Repository 통합 테스트(PostgreSQL) 추가
- BE: TenantRepository 계층 구조(Hierarchy), DB 제약조건(Unique) 테스트
- BE: UserRepository 통합 테스트(CRUD, Delete) 추가
- BE: PasswordPolicy 유틸리티 테스트 보강
- BE: TenantService 엣지 케이스(중복 슬러그, 권한 등) 검증 로직 추가
- Fix: 하위 테넌트 생성 시 ParentID 누락 문제 해결
2026-02-23 11:23:48 +09:00
919bcd27e8 프론트엔드 UI/UX를 전면 개편 2026-02-20 17:56:53 +09:00
e40dd8120e adminfront 로그인 해결 2026-02-19 18:02:47 +09:00