Enforce /network는 규칙 서버 측을 입력합니다
대상이 현재 세션 org, 사용자 정의 도메인 SSL이 아닌 경우 거부 확인, 또는 인간 대상 회원은 비활성입니다. 도메인 설정 OrgNetworkEnterPolicy를 통해 내 네트워크와 논리; 로드 대상 org와 findByIdWithDomains를 통해 도메인.
Org 회원이 필요합니다
이제 입력하면 항상 새로운 *** 클라이언트 공급 대상 회원 행; 잘못된 org/member를 거부합니다. 세션 디버그 로깅 개선.
PostAuth *** 로그인 및 입력 사이에 서비스
Post-authentication *** 빌드 (grant-all 확장, 프로파일 SQL, 분기 제목, createSession) PostAuth***서비스로 입력하여 사용 비밀번호 검증 후 kamo-login과 같은 코드 경로. Enter-as build AuthenticatedU...
Enter-as 세션은 Target org 보안 제공 업체 및 옵션 TargetMemberId를 사용합니다
Enter-as는 Redis securityOrgId를 user global security provider에서 설정했습니다. 로그인이 대상 org FQDN 체인에서 설정하는 동안. 그 잘못은 크로스도메인을 만들었습니다. hand-offs는 source/provider org와 같습니다...
BFF 요청에 대한 OTK에서 시스템 사용자 세션을 해결
SystemUserConfigController 및 SystemUserCapabilityController만 읽습니다. *** 쿠키. kamo-internal forwards X-OTK with cookies, 그래서 보안 서비스 절대 세션을 본 적이 없으며 합법적인 최고 수준의 소유자...
X-OTK BFF auth에서 세션을 수정
EnterAsController 만 읽기 *** 쿠키; 내부 트래픽 사용 OTKPreAuthFilter 세션 속성. JSON에서 큰 INT8 ids에 대한 문자열로 targetOrgId를 허용한다.
Backfill, 입력 흐름, 돌연변이 감시, 구성 API
Self-heal 프로비저닝: SystemUserBackfillService는 모든 것을 실행합니다. SecurityService boot (DataLoader에서)는 is system user 열을 추가합니다. and system user access table if 누락된 경우, 싱...
Signup 도중 전화 + 안전 질문
휴대폰 번호 및 보안 요청 수집을 셀프 서비스로 이동 등록 흐름 (그들은 원래 의도) 오히려 post-signup 설정 페이지를 필요로 합니다. - New RegistrationPhoneService: 생성/확인 6자리 SMS 코드를 통해 BulkTextSmsClient, 10분 TT...
회원 추가 / 팀 회원 생성 흐름 추가
- 새로운 MemberCreateController 노출: * GET *********** — age-req, 시간대, 부서, 직책 * GET **************** — 이메일 또는 사용자 이름에 의하여 debounced 존재 체크 * POST /api/security/membe...
EntitlementService + SecurityModel commerce 마켓 추가
- EntitlementService는 조합 활동에 의해 per-member 특징 보조금을 따릅니다 BillingGroupLicense 계획 기능 + KamoCRM 무료 계층 기본. 스낵 바 Redis의 15 분 프로젝트는 memberId에 키워졌습니다. - EntitlementInva...
By-department endpoint에서 팀원만 반환
Interaction Center는 TeamMember 행을 나열해야하며, base Member 레코드가 아닙니다.
Interaction Center 회원 라인은 구인 제목을 사용합니다
작업과 RBAC 역할 제목을 대체TitleOfficial, JobTitle에 fallback TeamMember의 카탈로그 제목 및 기본 회원 라벨 by-department payload 역할 필드에 기록.
앱 경로 및 기능 API에 가입 게이트 적용
AppAvailabilityInterceptor는 이제 항상 isAppEffectivelyEnabled를 사용합니다 FORCE ENABLED는 구독을 존중합니다. FeatureController serializes 활성화 모델 flag plus raw DB 대신 동일한 게이트에서.
Harden org 프로비저닝을위한 기본 템플릿 복사
대상 키에 대한 명시된 소스 접두사, 건너뛰기 S3 폴더 마커, 템플릿 접두사가 비어있을 때 실패 globals.css에 도달하지 마십시오.
Platform admin UI에 대한 ***에 teamMember 소유자 플래그 포함
Store teamMember { memberId, isOrganizationOwner} 에 로그인 그래서 kamo-internal hasPlatformAdminAccess는 최고 수준의 org 소유자를 만족시킬 수 있습니다 경로. IS ORGANIZATION OWNER 를 읽으려면 로...
필수 DNS CNAME aliases에서 드롭 메일
KnownAliases에서 메일을 제거하여 더 이상 확인 및 삭제 mail.example.com을 요구하십시오; 새로운 사용자 정의 도메인은 또한 자동 조정을 건너 뛸 메일 아이 alias.
정확한 적용 모델 소스 및 API에서 규정 준수
대신 BRANCH TYPE 대 MASTER에 대한 해결자 해상도 사용 BranchTypeID 혼자. 적용 모델에 FALSE/TRUE 준수 리터럴을 정상화 JSON 설정.
테마 자산에 구성 및 캐시 헤더의 ThemeRevision
Emit themeRevision (epoch ms) 각 쓰기에 config.json에; 설정 캐시 제어 config, globals.css 및 사이트. webmanifest uploads 그래서 가장자리 캐시가 다시 유효하다.
Cleanup 전에 globals.css를 쓰십시오; cleanup async를 실행하십시오
Reorder 프로비저닝 그래서 writeConfigFiles (컬러, 구성, 표시) 실행 배경 파일 정리 전에. 신선한 색상의 DB에서 Reload org. 완료 후 CompletableFuture에서 cleanupExtraBackgrounds를 실행하십시오. 느리거나 붙어있는 Mi...
MinIO Globals.css에 대한 org 색상 적용
DB의 재로드 조직은 동기화 규정의 시작 부분에 writeConfigFiles는 PATCH /colors (컨트롤러 스냅샷에 의해 저장된 색상을 볼 수 있습니다. stale일 수 있었습니다. Null-safe 이차 팔레트; hex 교체 일치 MinIO CSS의 3- 및 6 자리 값; r...
도메인 API의 isDefault로 DNS 인증 도메인 표시
*.kamocrm.com subdomains만 표시되어 있으므로 orgs 확인 된 사용자 정의 apex 도메인 (예 : kamocrm.com) 항상 defaultDomain=null과 사서함 만들기에서 차단되었습니다.
사용자가 org 소유자 TeamMember 인 경우 브랜드 허용
테마 제공 및 로고 / 배경 만 확인 된 조직. 이름 * FK; app UI는 TeamMember.isOrganizationOwner로 조직 소유자를 대우합니다, 다른 것. 둘 다를 가진 Align 허가는, 새로운 형태를 올려서 좋습니다 프로퍼런스.
Avatar 행을 삭제하기 전에 사용자 및 회원 FKs를 취소
Avatar를 삭제하면 여전히 활성 사용자 avatar 또는 회원 별 override가되었을 때 DB constraint로 실패했습니다. 이는 사용자가 stale 레코드를 제거 할 수 없었던 끊긴 MinIO blobs를 일치시킵니다.
Org 폴더를 닦지 않고 기본 템플릿
전체 조항 더 이상 복사하기 전에 org 접두사 삭제. 본문 바로가기 public/default overwrites 일치하는 열쇠만; org의 밑에 다른 목표 폴더가 남아 있습니다. 기본 템플릿 소스는 kamocrm-com에서 기본값으로 변경되었습니다.
엄격한 DNS 검증 없이 테마 폴더 호스트를 해결
필요한 테마 제공은 모든 도메인에 대해 인증, 그래서 orgs 만 사용 기본 kamocrm.com subdomain 결코 동기화 작업을 시작하지 (400, STOMP). 어떤 활성 도메인으로 돌아 가기, 다음 {alias}.kamocrm.com.
Core NATS의 테마 제공 진행
JetStream CHAT MESSAGES 스트림은 채팅을 위해 구성된다.> 단지, 그래서 게시 to **************** 스트림 검증 및 UI 보기 계속. Connection.publish를 사용하여 SupportNotificationService.
Set EmbRecordState.isActive on wizard create-org so orgs.is active is not null
CreateOrganization에 create-org body 를 분산 법인 JsonIdentity를 방지하기 위해 Payload 정보 실패
@RequestBody없이 Parse create-org JSON
Spring Return Unsupported Media Type when Content-Type이 누락되거나 @RequestBody에 허용됩니다. 바이트를 읽고 대신 ObjectMapper를 사용하십시오. APIService/Next 프록시는 콘텐츠 협상 실패를 유발할 수 없습니다.
모델 및 creatable 지점 유형에 ATF 준수 정책 노출
- OrganizationController는 연령 증명 전에 모델 시행을 적용합니다. - SecurityModelController 및 MasterModelController 패스 정책 필드 - BranchTypeController는 /branch-types/creatable에 있는 ...