Позвольте Пользователю Системы решить любую прикладную модель организации
Перекрестные ворота возвращались 403, когда OrgId! = сессия Org и вызывающий Не было ни одного члена в целевой организации. Работает пользователь всей платформы...
Используйте сервис кластера MinIO DNS; откажитесь от устаревших IP-адресов WireGuard/CGNAT и удалите k2m1/k0m1
Canonicalize webhook repo name to public-projects casing
После миграции кластера репо Forgejo были воссозданы в более низком регистре. (служба безопасности), но используются исторические ряды и фильтры публичных проек...
Генерировать favicons с помощью многоузлового логотипа читать, не существует одноузлового()
генерироватьAndUploadFavicons() на minioService.exists(), который только Статистика текущего хоста MinIO. Когда был написан простой логотип (или только реплицир...
Экспозиция GD (приемлемость бога) в /user-info для вселенной Камо
Сеанс хранит флаг GD (KSessionService), но /user-info не возвращается. Таким образом, Камо-Вселенная Камо-Идентичность всегда десериализируется, является богом ...
Чувствительный к делу поиск по электронной почте, поэтому перезагрузите электронные письма
Восстановление пароля понижает ввод, но findByEmailEmail делает совпадение с сохраненной электронной почтой (например, Sage@KamoCRM.com), Таким образом, пользов...
Провести имитационный аудит через прыжки в орг
Когда абонент уже является сеансом олицетворения (админ бога, действующий как абонент). другой член, несущий SUDO MEMBER ID, входящий в другую организацию из се...
Выберите рынок SUBSCRIPTION для настройки платформы
KamoCRM владеет несколькими рынками ********************** Продукционный рынок должен выбрать тип SUBSCRIPTION (платформенный доступ) Вместо первого активного. ...
Регенерировать favicons на этикетке сохранить; обнюхать реальный тип логотипа
provisionUpdate (запускается на каждом заказном маркировочном сейфе) пишется config/css/manifest Но никогда не регенерировали фавиконы — они были произведены то...
Seed globals.css из шаблона, когда в папке Org его нет
обновление (запускается на каждом цвете) переписал орг css/globals.css на месте, но этот объект существует только один раз Полностью скопирован из шаблон по умо...
Отсоединить перед заменой набора функций в /org/domain
Предыдущая фиксация подключала проекцию прикладной модели к ************************************* org.setОсобенности (проецируемые) на все еще управляемую орган...
Решите двусмысленный /org/domain-обработчик — Commerce nav исчезает
У контролёра был второй ****************, который ************************************ Весна была отвергнута запрос с «Двусмысленными методами обработчика» → 50...
Добавить /me/язык, который обходит SystemUserGuard
Сборщик языка NavTop ничего не сделал для пользователя системы, подписавшего Исполнитель: PUT **************** Сначала работает SystemUserGuard. 403-я мутация S...
Никогда не подключайте принадлежащие Kamo поддомены к собственности TXT
Детские организации, которые выбрали веб-псевдоним Kamo (например, gnosia.demo.kamocrm.com) «TXT-запись найдена, но код проверки не совпадает» В DNS Setup UI. О...
Предоставление владельцам организаций верхнего уровня перекрестного доступа к удалению/обновлению
удалить Домен и обновить Домен, ранее отклоненный администраторами платформы работать на доменах child-org, поскольку они проверяются против целевой организации...
Разрешить удаление поддоменов per-org *.kamocrm.com
Охранник (.kamocrm.com) заблокировал каждую демонстрационную организацию замена поддомена платформы (например, gmosia.demo.kamocrm.com) на пользовательский доме...
Пропагандировать статус администратора-создателя ребенка-орга для членства в родительской организации
Когда пользователь создает детскую организацию, он становится ее владельцем + администратором. **************************** членство их родителей, Однако, что б...
Владелец монетного двора OTK с предоставлением всех прав без DB round-trip
После ************* назначает Администратора Роль и пишет Member rights applied, блок OTK-minting был Перечитать эти строки через **************** Внутри того ж...
Разрешить повышенный доступ к getDomainById и верифицировать конечные точки DNS
Владельцы и члены системы высшего уровня получили 403 на getDomainBy Ид и проверяем DNS, потому что эти конечные точки проверены Организовать напрямую. Добавляе...
Разрешить владельцам и членам системы верхнего уровня управлять доменами любой организации
Предотвращение дублирования корневых доменов и исправление дисплея первичного домена
ONE DOMAIN PER ORG неправильно исключил .kamocrm.com web-alias домены, позволяющие оргу накапливать несколько корневых доменов (и 10 Для каждого из них есть сво...
Уменьшить задержку создания орга и исправить каскадные сбои перевода
- OrganizationController: замените ensureTeamMembersForAllOrgs (полная организация) Сканирование стола) с помощью обеспеченияTeamMemberForOrg (единственная орга...
Автоматическое назначение первого места, Бесплатно в качестве пола, более широкая форма признания недействительным
BillingSetupService активирует первый слот с открытой лицензией при посеве суборг подписки (и то же для промо-биллинг-владельца) — В противном случае новый влад...
Члены организации верхнего уровня получают план владельца платформы, минуя платежные ворота
Члены KamoCRM (высшего уровня) не подчиняются системе выставления счетов. получить матрицу функций OWNER UNLIMITED (с Free as a) защитный откат, если план владе...
Обновление OrgThemeProvisionServiceTest для параметра описания buildConfigJson
Приоритет реального имени / фамилии пользователя для отображения
usernameAlias - это функциональная ручка входа (часто равная имени пользователя), Не отображаемое имя. Настоящие человеческие имена живут на User.name (EmbNameF...
Решите имя дисплея с правильным приоритетом в конечной точке отдела
Приоритет: member.usernameAlias → user.name.formatFull() → user.alias → user.username
Сериализация длинной строки для предотвращения потери точности JS на больших идентификаторах CockroachDB
Удалите дубликат CorsFilter, вызывающий двойной заголовок Access-Control-Allow-Origin
Явная фасоль CorsFilter вызвала второй CORS-фильтр вместе с Spring. Встроенная поддержка CORS (с использованием CorsConfigurationSource) Оба фильтра решили шабл...
Позволить пользователю системы управлять брендингом Org и исправлять логотип
- Добавить обход пользователя системы в качестве первой защиты в canManageOrgBranding Пользователь системы имеет полный контроль над всеми неродительскими орган...
Реальная причина ошибки GoDaddy 400
GoDaddy теперь возвращает HTTP 400 с кодом = UNABLE TO AUTHENTICATE «Плохой запрос: плохой запрос», когда учетная запись не соответствует их текущему Производст...
Eager-load domains via findByIdWithDomains, drop @Transactional
@Transactional на методе контроллера держит соединение DB открытым Вся загрузка MinIO, а также риск LazyInitializationException внутренняя GetOrganizationById т...
Загрузить непосредственно в public/{domain-folder}/img/ вместо постановки ведра
Конечная точка загрузкиLogo писала в жестко закодированный заполнитель «sumtingwong» (незаполненная настройка) вместо фактического публичного тематического пути...
Удаление сбитого узла k2m1 из краевых узлов по умолчанию
k2m1 (10.8.2.1) постоянно снижается. Оставить его в списке отказов Это привело к тому, что повторные загрузки зависли до тех пор, пока новый тайм-аут OkHttp не ...
Enforce/network вводит правила на стороне сервера
Отклонить, когда целью является текущий сеанс, пользовательский домен SSL не Подтверждено, или целевое членство человека неактивно. Share domain-setup Логика с ...
Требовать членство в организации назначения Id и валидировать членство в организации
Enter-as теперь всегда строит новый *** с клиентом-поставленной целью членский ряд; отклонить несоответствующую организацию/член. Улучшить сеансовую отладку.
Сеанс Enter-as использует провайдера безопасности целевой организации и дополнительную целевую платформу TargetMemberId
Enter-as устанавливал Redis securityOrgId от пользователя global security provider, в то время как логин устанавливает его из целевой сети FQDN. Это несоответст...
Разрешение сеанса системного пользователя из OTK для запросов BFF
SystemUserConfigController и SystemUserCapabilityController только читать *** печенье. kamo-internal пересылает X-OTK без файлов cookie, поэтому SecurityService...
Enter-as resolves сессия от X-OTK BFF auth
EnterAsController читает только *** файлы cookie; внутренний трафик использует OTKPreAuthFilter атрибуты сеанса. Принять targetOrgId в качестве строки для больш...
Возврат только членов команды из конечной точки отдела
Центр взаимодействия должен перечислять строки TeamMember, а не базовые записи участников.
Применить вход для подписки на маршруты приложений и функцию API
AppAvailabilityInterceptor теперь всегда использует AppEffectivelyEnabled FORCE ENABLED уважает подписку. FeatureController позволяет серийно от одних и тех же ...
Затвердить копию шаблона по умолчанию для обеспечения Org
Используйте явный префикс источника для ключей назначения, пропустите маркеры папок S3, и быстро проваливаются, когда префикс шаблона пуст, так что молчаливые ч...
Включите флаг владельца TeamMember в *** для пользовательского интерфейса администратора платформы
Участник магазина { MemberId, isOrganizationOwner} в сеансе Redis при входе kamo-internal hasPlatformAdminAccess может удовлетворить владельца организации высше...
Включите верхнюю ступень в JSON по домену для внутреннего платежного интерфейса
Бросьте почту с требуемых псевдонимов DNS CNAME
Удалите почту из KnownAliases, чтобы больше не проверяли и не заходили на борт требуется mail.example.com; новые пользовательские домены также пропускают автома...
Parse session orgID и userID при хранении в виде строк в AppliedModelController.
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.