Google Apps, AD и SSO


15

Мы являемся небольшим магазином, в котором работают Службы Google (Enterprise) для нужд нашей электронной почты Любить это. Внутренне мы используем Windows AD (2003). Там тоже никаких нареканий.

Я бы хотел, чтобы какой-то метод единого входа шел между AD и Google Apps, так что AD - единственное место, где мои люди должны управлять (и периодически ИЗМЕНИТЬ!) Паролями.

В прошлом я просматривал "tfm" в Google, но, похоже, я не совсем понял. Кто-нибудь делает это? Если это так, вы бы хотели поделиться, как? Можно ли это сделать без огромного количества сложности и затрат?


Мы делаем это, но я не совсем в курсе всего процесса. Вам придется подождать до понедельника, чтобы я мог спросить одного из наших программистов.
l0c0b0x

@ l0c0b0x: я весь в ушах :-)
Chris_K

Прочитайте ответ Zoreache :)
l0c0b0x

Ответы:


9

Есть несколько вещей, которые вы можете сделать с помощью Google Apps.

Вы можете настроить сервер SAML, подключенный к вашей сети AD, а затем настроить Google для проверки подлинности вашего доступа к Службам Google на сервере SAML. Мы использовали php-приложение simpleSAMLphp, потому что у нас уже есть настройка серверов для запуска PHP и у нас есть разработчики с навыками php. Недостаток использования одного решения SAML состоит в том, что вы можете войти в систему только через учетные записи в Интернете. Это означает, что вы не можете получить доступ к своему почтовому ящику через imap / pop и не можете войти в Google Talk с помощью любого старого XMPP-клиента.

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

Можно использовать что-то вроде PasswdHk для перехвата изменений пароля в AD, а затем сохранить пароль в формате (несоленый sha1), который утилита синхронизации каталогов Google может использовать для установки паролей Служб Google. Но это добавляет небольшую угрозу безопасности, так как Google будет принимать только несоленые хеши паролей md5 или sha1 через свой API предоставления , и для синхронизации с Google вы в основном должны хранить эти хэши. Если вы хотите использовать это, очень важно обеспечить безопасность этих хэшей.

Hmmph. Вы меня все взволновали SAML, пока немного о imap / pop. Это убило бы всех людей с помощью Windows Mobile и клиентов BlackBerry, не так ли? Есть ли какие-нибудь умные альтернативы?

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

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

Основная идея состоит в том, чтобы создать веб-приложение, которое

  • Живет в вашей интрасети и аутентифицируется в вашем активном каталоге
  • Имеет функцию, которая берет имя пользователя и пароль, которые пользователь использовал для входа на сайт интрасети, и получает любую другую информацию, необходимую вам из AD, а затем использует API предоставления Google для добавления / обновления учетной записи пользователя.

Создание инструмента на самом деле не должно быть слишком сложным, я подсчитал, что взломать что-то базовое - это займет всего 12-16 часов времени разработки. Преимущество этого решения заключается в том, что оно предоставляет вам 100% функциональность Google Apps, а недостатком является то, что оно несколько доставляет неудобства конечному пользователю.


Hmmph. Вы меня все взволновали SAML, пока немного о imap / pop. Это убило бы всех людей с помощью Windows Mobile и клиентов BlackBerry, не так ли? Есть ли какие-нибудь умные альтернативы? Может быть, я начинаю
понимать,

Спасибо за редактирование и дополнительную информацию. Мне есть над чем задуматься.
Chris_K

3
Google выпустила новый продукт синхронизации паролей Google Apps Password Sync (GAPS), который теперь должен с этим справиться.
Zoredache

2

Я тоже хотел бы увидеть лучший ответ на этот.

Я поиграл с Google Apps Directory Sync, чтобы синхронизировать пользователей Google с пользователями Active Directory. Это выглядело прекрасно, вплоть до того момента, когда я прочитал, что реализация AD LDAP хранит пароль в зашифрованном двоичном поле, к которому инструмент синхронизации Google не может получить доступ.

Другое решение единого входа от Google, похоже, перевернуло таблицы, так что Google является авторитетным источником учетных данных. Мы не заинтересованы в этом; что произойдет в нашей локальной сети, если доступ к Интернету будет закрыт?

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


1
Ваш комментарий о службе Google SAML не точный (2-й пункт). SAML позволяет вам иметь услугу в вашей локальной сети для аутентификации. Ваша реклама будет официальным источником авторизации. Что вы должны сделать, это запустить синхронизацию каталогов и интеграцию с SAML параллельно, они не очень полезны в отдельности.
Zoredache

Отлично, спасибо за исправление. После вашего комментария я провел еще несколько поисков и нашел этот хороший обзор потока аутентификации SAML code.google.com/apis/apps/sso/… .
Джеспер М

2

Вот фильтр паролей, который хранит хэш в объявлении. http://code.google.com/p/sha1hexfltr/ Он надежно сохраняет хэши в рекламе. Нет необходимости в SSO, новые серверы не нужны!


1

Хм, никто не занимается SSO? Признаюсь, я немного удивлен!

Просто, чтобы начать работу: мне предложили PingConnect через другие каналы. Кто-нибудь использовал это?



0

Некоторые продукты, такие как Oracle Internet Directory + Oracle SSO (и IBM TIM / TAM), позволяют подключаться к сторонним системам. Это означает, что продукт настроен для синхронизации с AD и сохраняет учетные данные для всех остальных продуктов, которые вы когда-либо представляли. Вы получаете новую ссылку для входа в систему, которая отправляет учетные данные в нужную вам систему (в данном случае - Google Apps), и все.

Имейте в виду, что довольно сложно настроить и запустить такую ​​конфигурацию, и это также может стоить вам денег, поэтому она не подходит для любой организации.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.