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

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

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

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

  • Откройте раздел LDAP Settings (Настройки LDAP) > User (Пользователь) > User Sync (Синхронизация пользователей) и настройте правила поиска в Диспетчере конфигураций так, чтобы в результаты включалось меньше пользователей.
  • В Диспетчере конфигураций обязательно задайте правильное базовое уникальное имя (DN). Оно должно указывать на корневой каталог, содержащий только те аккаунты пользователей, которые требуется синхронизировать с доменом 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
(не удалось проверить статус отзыва: список CRL не найден)

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

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

В качестве временного решения можно отключить проверку списков CRL, однако в целях безопасности не рекомендуется этого делать. Если вы все же решите внести эти изменения, добавьте в файлы 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:
имя-сервера: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 [Корневое исключение javax.naming.CommunicationException: domain.com:389 [Root exception is java.net.ConnectException: В подключении отказано: connect]]
  • javax.naming.PartialResultException [Корневое исключение 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) 

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

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

Эта информация оказалась полезной?
Как можно улучшить эту статью?