Сообщения об ошибках GCDS

В таблице ниже перечислены ошибки, которые могут возникать при работе с Google Cloud Directory Sync (GCDS). Полную информацию о приложении GCDS можно найти в Справочном центре.

Сообщение об ошибке Описание и решение проблемы
org.jdom.input.JDOMParseException: Error on line 1: Content is not allowed in prolog (Ошибка в строке 1: контент не разрешен в Prolog)

GCDS пытается загрузить файл конфигурации с неподдерживаемой кодировкой.

По умолчанию в GCDS используется кодировка UTF-8. Мы рекомендуем использовать для файлов конфигурации именно ее, хотя некоторые другие кодировки тоже поддерживаются.

Чтобы решить эту проблему, выполните следующие действия:

  1. Измените кодировку файла конфигурации на UTF-8. Это можно сделать в большинстве популярных текстовых редакторов: просто откройте файл и сохраните его с другой кодировкой.
  2. Проверьте правильность контента в файле конфигурации.
  3. Снова попробуйте загрузить файл конфигурации в GCDS.

Следующие кодировки часто используются, но не поддерживаются:

  • UTF-7
  • UTF-8 BOM
Can have at most one primary
organization (Основная организация может быть только одна)

GCDS пытается обновить профиль пользователя Google, соответствующий как минимум одному из правил исключения. Эти правила должны соответствовать только пользователям, которые есть в домене Google и которых нет на LDAP-сервере. В Диспетчере конфигураций откройте раздел Google Domain Configuration Exclusion rules (Правила исключения для конфигурации домена Google) и убедитесь, что там нет правил, которые исключали бы пользователей с LDAP-сервера.

Подробнее о правилах исключения и GCDS

javax.net.ssl.SSLHandshakeException:
connection during handshake (соединение во время рукопожатия)

Из-за ошибки сети GCDS не удалось установить соединение с серверами Google по протоколу SSL. Возможно, это вызвано слишком медленной маршрутизацией пакета или перебоями связи на стороне интернет-провайдера.

GCDS автоматически предпринимает три попытки установить соединение по протоколу SSL. Если в журнале появились следующие сообщения, соединение удалось установить со второй или третьей попытки и вам ничего не нужно делать:
[2011-12-14 14:20:44,494] [main] [INFO] [usersyncapp.sync.FullSyncAgent] No differences detected, no changes necessary (Различий не обнаружено, изменения не требуются).

Чтобы выяснить причину проблемы, обратитесь к своему администратору.

Quota exceeded for the current request (Превышена квота для текущего запроса) Доступ GCDS к API Google временно заблокирован из-за слишком большого количества запросов. Скорее всего, вы превысили разрешенную квоту API, поэтому повторную синхронизацию следует начинать не ранее чем через 24 часа.

Если вы видите это сообщение, проверьте итоговую сводку по синхронизации. Если в ней нет записей о том, что аккаунты каких-либо пользователей не удалось синхронизировать, заблокированный запрос был выполнен автоматически и вам ничего не нужно делать.

Квоты API Google хватает для обычного использования системы. Однако если моделировать сразу несколько сеансов синхронизации или синхронизировать с помощью GCDS пароли всех пользователей, ограничение может быть превышено. Если вы используете команду sync-cmd с автоматическим скриптом, попробуйте выполнять ее реже.

Если эта ошибка является критической, попробуйте войти в GCDS с помощью другого аккаунта администратора Google или воспользуйтесь аутентификацией по протоколу OAuth.
java.lang.RuntimeException:
Unknown LDAP search rule scope "null" (Неизвестное правило поиска LDAP со значением null)
Не задано значение правила в одном из следующих разделов Диспетчера конфигураций:
  • LDAP Settings > Org Units > Search Rules (Настройки LDAP > Организационные подразделения > Правила поиска);
  • LDAP Settings > Users > User Sync (Настройки LDAP > Пользователи > Синхронизация пользователей);
  • LDAP Settings > Groups > Group Search Rules (Настройки LDAP > Группы > Правила поиска групп);
  • LDAP Settings > User Profiles > User Profiles Sync (Настройки LDAP > Профили пользователей > Синхронизация профилей пользователей);
  • LDAP Settings > Shared Contacts > Contacts Sync (Настройки LDAP > Общие контакты > Синхронизация контактов).

Подробнее о настройке синхронизации в Диспетчере конфигураций

InvalidHashDigestLength(1405)

В Диспетчере конфигураций неправильно настроен метод шифрования паролей для синхронизации, или на LDAP-сервере используется метод шифрования, несовместимый с GCDS. Поддерживаются методы Plaintext (открытый текст), Base64, MD5 и SHA1. Для синхронизации паролей с каталогом Microsoft Active Directory используйте приложение G Suite Password Sync.

В GCDS до версии 3.1.3 может возникать следующая ошибка: Upgrade to the latest version of GCDS (Выполните обновление до последней версии GCDS).

Дополнительную информацию читайте в статьях Выбор метода синхронизации паролей и Что нового в Google Cloud Directory Sync.

0 nested group(s) (0 вложенных групп) GCDS не различает пользователей и вложенные группы на LDAP-сервере.

Чтобы решить эту проблему, выполните следующие действия:
  1. Добавьте в раздел <features> файла конфигурации следующую строку:
    <optional>GROUP_NESTED_GROUPS_AS_USERS
    </optional>
  2. Сохраните файл и начните синхронизацию.
Suspend user (Заблокированный аккаунт пользователя)

Эта ошибка может возникнуть, если синхронизация выполняется с помощью файла конфигурации, копия которого была создана не в Диспетчере конфигураций. Новый файл обращается к тому же кешу, что и исходный, и из-за этого аккаунты пользователей блокируются.

Чтобы создать копию файла конфигурации GCDS, всегда пользуйтесь командой Save As (Сохранить как) в Диспетчере конфигураций. В этом случае для нового файла будет создан собственный кеш.

Подробнее о работе с файлами конфигураций

Skipping unknown member (Пропуск неизвестного участника)

Вы используете устаревший XML-файл конфигурации, и приложение GCDS обнаружило участника группы, который не указан в правилах поиска пользователей. В них необходимо включить всех участников и владельцев групп, даже если вы не планируете синхронизировать их аккаунты с доменом Google. Их адреса электронной почты необходимы приложению GCDS для того, чтобы правильно обрабатывать группы.

В качестве альтернативного решения создайте пустой XML-файл конфигурации. После этого GCDS начнет синхронизацию групп, во время которой будет обрабатывать аккаунты пользователей независимо от правил синхронизации. Этот вариант решения оптимален для большинства случаев.

После того как вы создадите новый файл конфигурации или внесете изменения в существующий, не запускайте синхронизацию сразу, а выполните моделирование.

Подробнее о создании списка пользователей

com.google.gdata.client.
GoogleService$InvalidCredentials
Exception:
Invalid credentials (Неверные учетные данные)

Аккаунт администратора домена, указанный в Диспетчере конфигураций, является обычным пользовательским аккаунтом, или его учетные данные введены неправильно.

В Диспетчере конфигураций откройте раздел Google Domain (Домен Google) > Settings (Настройки) и проверьте данные аккаунта администратора в разделе Admin Email Address (Адрес электронной почты администратора).

Подробнее об определении настроек домена Google

com.google.gdata.util.
ResourceNotFoundException:
Для атрибута ключа синхронизации, указанного в разделе Shared Contacts (Общие контакты) Диспетчера конфигураций, с LDAP-сервера возвращаются пустые значения. Выберите на LDAP-сервере атрибут, который содержит значения ключей синхронизации для всех ресурсов и не возвращает пустые строки или значение null.
Computed differences exceed
configured deletion limits,
not applying changes (Рассчитанные различия превышают настроенные квоты удаления; изменения не применяются)

Вы достигли заданного в GCDS ограничения на удаление или блокировку. Чтобы эта ошибка больше не возникала, измените в GCDS параметр Delete Limits (Квота на удаление) или проверьте журнал синхронизации. Он может содержать дополнительную информацию о том, какие аккаунты будут удалены или заблокированы.

EntityExists(1301) Средству синхронизации не удается добавить пользователей или группы. Если администратор уже создал аккаунт в домене Google вручную или через API, приложение GCDS может пытаться сделать это ещё раз. Причина в том, что для повышения его производительности аккаунты Google кешируются локально.

Чтобы решить эту проблему, очистите кеш GCDS, добавив к команде sync-cmd аргумент -f, или удалите папку кеша (syncState) в следующих каталогах:
  • %USERPROFILE%\syncState (в Windows);
  • ~/syncState (в Linux).
EntityNameNotValid(1303) Эта ошибка может возникать по одной из следующих причин:

1. GCDS пытается создать имя пользователя или псевдоним электронной почты, который уже существует в домене, не относящемся к аккаунту Google.
Решения:

  • В Диспетчере конфигураций откройте LDAP Settings (Настройки LDAP) > Users (Пользователи) > User Sync (Синхронизация пользователей) > Exclusion Rules (Правила исключения) и создайте правила, исключающие пользователей, которые не входят в ваш домен.
  • Измените правила поиска так, чтобы в результатах возвращались пользователи только из вашего домена.
  • Добавьте отсутствующий домен в аккаунт Google в качестве дополнительного.

2. GCDS синхронизирует больше пользователей, чем позволяет аккаунт.
Решения:

  • В Диспетчере конфигураций откройте раздел LDAP Settings (Настройки LDAP) > Users (Пользователи) > User Sync (Синхронизация пользователей) и настройте правила поиска так, чтобы в результаты включалось меньше пользователей.
  • Обязательно задайте правильное базовое уникальное имя в Диспетчере конфигураций. Оно должно указывать на корневой каталог, содержащий только те аккаунты пользователей, которые требуется синхронизировать с доменом Google.
java.lang.RuntimeException:
javax.naming.InvalidNameException:
[LDAP: error code 34 - invalid DN] ([LDAP: код ошибки 34 – недействительное уникальное имя])
Возможно, базовое уникальное имя в Диспетчере конфигураций указывает на объект, которого нет на LDAP-сервере. Проверьте его значение в фильтрах пользователей, групп, профилей, общих контактов и соединений с LDAP-сервером. В каждом случае уникальное имя должно указывать на существующие объекты.
java.security.cert.CertPathValidator
Exception:
revocation status check failed:
no CRL found (Ошибка проверки статуса отмены: не найден список отзыва сертификатов)

Другой сервис или сетевое устройство не позволяют приложению GCDS связаться с центром сертификации, чтобы получить сертификат HTTPS для API. Проверьте настройки прокси-сервера или брандмауэра. Возможно, они препятствуют установке соединения.

Если для доступа в Интернет с компьютера, на котором работает GCDS, используется прокси-сервер, его необходимо правильно настроить.

В качестве временного решения можно отключить проверку списков отзыва сертификатов, однако в целях безопасности не рекомендуется этого делать. Если вы все же решите внести эти изменения, добавьте в файлы config-manager.vmoptions и sync-cmd.vmoptions в каталоге установки GCDS следующие строки:
-Dcom.sun.net.ssl.checkRevocation=false
-Dcom.sun.security.enableCRLDP=false

Подробнее о проверке списков CRL приложением GCDS

javax.naming.directory.
InvalidSearchFilterException:
Unbalanced parenthesis; remaining name (Незакрытые скобки; неверное имя)
В запросах на одной или нескольких из следующих страниц в Диспетчере конфигураций есть незакрытые скобки:
  • LDAP Settings > Org Units > Search Rules (Настройки LDAP > Организационные подразделения > Правила поиска);
  • LDAP Settings > Users > User Sync (Настройки LDAP > Пользователи > Синхронизация пользователей);
  • LDAP Settings > Groups > Group Search Rules (Настройки LDAP > Группы > Правила поиска групп);
  • LDAP Settings > User Profiles > User Profiles Sync (Настройки LDAP > Профили пользователей > Синхронизация профилей пользователей);
  • LDAP Settings > Shared Contacts > Contacts Sync (Настройки LDAP > Общие контакты > Синхронизация контактов).
Root exception is javax.naming (Корневое исключение javax.naming).
CommunicationException:
servername:389
GCDS не удалось разрешить указанное имя LDAP-сервера. Убедитесь, что для сервера задано полное доменное имя, а компьютер, на котором запущено приложение GCDS, способен его разрешить.

Примечание. Если вы используете Active Directory, всегда указывайте полное доменное имя сервера.
SSL peer shut down incorrectly (Одноранговый узел SSL некорректно завершил работу)

Обычно эта проблема связана с перенаправлением трафика через прокси-сервер. Если вы используете прокси-сервер, настройте на нем разрешения для GCDS.

Убедитесь, что GCDS может подключиться к этим URL и портам.

Такая ошибка может возникать, если антивирусное ПО на локальном компьютере препятствует соединению. Попросите администратора отключить все подобные программы на компьютере клиента и повторите попытку.

You are not authorized to access this API (Вам запрещен доступ к этому API)

Убедитесь, что включены требуемые API Google.

Подробнее…

Domain user limit exceeded (Превышено ограничение на количество пользователей в домене) Число пользователей, которых вы попытались добавить, превышает количество доступных лицензий. Свяжитесь с торговым представителем для покупки необходимого количества лицензий или синхронизируйте меньше пользователей, настроив запросы LDAP.
java.lang.RuntimeException: Failed to execute query because the object at Base DN: "DC=domain,DC=com" is missing or inaccessible (Не удалось выполнить запрос, поскольку объект корневого элемента DC=domain,DC=com недоступен или отсутствует) Сначала проверьте базовое уникальное имя (DN) на вкладке Конфигурация LDAP, а также во всех поисковых правилах, где вы разрешили перезапись DN.

Если базовое уникальное имя указано правильно, но проблема не исчезает, вероятно, она связана с разрешением DNS. Вы можете найти дополнительную информацию об ошибке в журнале, например:

  • javax.naming.PartialResultException [Root exception is javax.naming.CommunicationException: domain.com:389 [Root exception is java.net.ConnectException: Connection refused: connect]] ([Корневое исключение javax.naming.CommunicationException: domain.com:389 [Корневое исключение java.net.ConnectException: В подключении отказано: connect]])
  • javax.naming.PartialResultException [Root exception is javax.naming.CommunicationException: domain.com:389 [Root exception is java.net.ConnectException: Connection timed out: connect]] ([Корневое исключение javax.naming.CommunicationException: domain.com:389 [Корневое исключение java.net.ConnectException: Превышено время ожидания подключения: connect]])

Эти ошибки показывают, что хост отказывает в соединении или время ожидания превышено. Попробуйте запустить на этом хосте DNS-запрос и убедитесь, что все возвращаемые адреса верны и разрешают соединение через порт, который вы указали.

Примечание. Эти ошибки могут возникать, даже если в конфигурации GCDS вы указали верное имя или IP-адрес хоста. Active Directory может возвращать ответ с реферальным LDAP-сервером, требующий от GCDS подключаться через имя хоста, который не отвечает. Этого можно избежать, если подключаться к серверу Active Directory через порт глобального каталога (по умолчанию 3268). Дополнительные сведения можно найти в этой статье.

Character is invalid at location (Недопустимый символ в расположении)

Специальная схема содержит недопустимые данные.
Ознакомьтесь с текущими ограничениями в отношении специальных схем.

Если ваши журналы ведутся на уровне детализации Trace (Трассировка), вы также можете посмотреть полный НТТР-запрос для схемы.

java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: GC 
overhead limit exceeded (Превышено предельное ограничение GC)

Превышено установленное ограничение на объем памяти, что привело к сбою синхронизации.

О том, как устранить эту проблему, можно узнать в разделе Что делать при появлении ошибок, связанных с объемом памяти?

Failed trying to connect to the specified LDAP server (Ошибка подключения к указанному серверу LDAP)

GCDS не удалось подключиться к серверу LDAP. Убедитесь, что:

  • Вы используете нужный протокол. Если LDAP требует использования защищенного протокола, включите LDAP + SSL.
  • Сервер LDAP запущен, работает и не имеет других проблем с подключениями.
Network problem: Unable to connect to the specified LDAP server (Проблема сети: не удалось подключиться к указанному серверу LDAP)

GCDS не удалось найти сервер LDAP. Убедитесь, что компьютер с GCDS имеет доступ к указанному хосту и порту.

Authentication problem: Unable to connect using the credentials supplied (Проблема аутентификации: не удалось подключиться с указанными учетными данными)

Сервер LDAP отклоняет запросы GCDS из-за проблем с аутентификацией.

Убедитесь, что имя и пароль авторизованного пользователя введены правильно.Для авторизованного пользователя нужно указать полное уникальное имя (DN). Подробнее о добавлении авторизованного пользователя

Failed to execute query at Base DN <базовое уникальное имя> (Не удалось выполнить запрос с базовым уникальным именем)

GCDS не удалось подключиться к базовому уникальному имени (DN). Убедитесь, что:

Failed to execute query at Base DN <базовое уникальное имя> for attribute: <атрибут>, reason: NameNotFoundException (Не удалось выполнить запрос с базовым уникальным именем для атрибута, причина: NameNotFoundException)

GCDS не удается получить данные от сервера LDAP. Убедитесь, что:

  • объект <базовое уникальное имя> существует и доступен для авторизованного пользователя;
  • <атрибут> существует для объекта <базовое уникальное имя> на сервере LDAP.
Member already exists (Участник уже добавлен)

Это сообщение может появляться по следующим причинам:

  • Существует участник, для которого основным адресом LDAP является псевдоним адреса в G Suite. Старайтесь не допускать такой ситуации (например, используйте для псевдонима другое имя пользователя).
  • В аккаунте пользователя одно и то же имя используется в двух псевдонимах адресов. Кроме того, на странице Google Domain Configuration (Конфигурация домена Google) вы установили флажок Replace domain names in LDAP email addresses (Заменять доменные имена в адресах электронной почты LDAP). Если установить этот флажок, в обоих адресах электронной почты будет прописан домен, указанный в поле Alternate email domain (Дополнительный домен электронной почты). Снимите этот флажок или измените одно из имен пользователей, указанных для псевдонимов.
Google, Google Workspace и другие связанные товарные знаки и логотипы принадлежат компании Google LLC. Все другие названия компаний и продуктов являются товарными знаками соответствующих компаний.
Эта информация оказалась полезной?
Как можно улучшить эту статью?