Adobe Air - чтение информации с сервера LDAP - PullRequest
2 голосов
/ 21 апреля 2010

У меня есть приложение AIR, и я хотел бы подключиться к серверу LDAP, чтобы получить некоторую информацию для конкретного пользователя.

URL-адрес выглядит примерно так: ldap: // ldapservername: 389 /

Я хотел бы передать идентификатор пользователя / имя в качестве параметра и надеюсь получить полное имя, адрес электронной почты и т. Д.

Не могли бы вы дать предложения относительно реализации этого?Мне подходит и решение для Windows.

Ответы [ 2 ]

2 голосов
/ 22 апреля 2010

Adobe AIR не имеет встроенной поддержки LDAP. Все онлайн-примеры проходят через сервер для интеграции с LDAP.

Пример: выполнение запроса LDAP для разрешения роли http://www.adobe.com/devnet/livecycle/articles/perform_ldap_resolution.html

Если не использовать сервер, вы ограничены двумя вариантами, ни один из которых не годится.

  1. Полностью повторно внедрить протокол LDAP в AIR. Я думаю, что это возможно, но это огромная задача. С Alchemy теоретически вы можете перекомпилировать существующую библиотеку C для работы с AIR, но я не знаю, насколько хорошо это будет работать для этого конкретного варианта использования. Кроме того, это исследовательский проект, а не производство готово.

  2. Вставить собственное приложение. В AIR 2.0 вы можете включить собственное приложение, написанное на C или .NET, или другое и запустить его для выполнения ваших вызовов LDAP. Единственный способ связаться с этим другим процессом - через stdin / stdout, поэтому сложно передавать сложные / типизированные данные, но это возможно.

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

0 голосов
/ 22 апреля 2010

Вам, вероятно, понадобится сделать обычные вещи LDAP. Либо начните с полного DN пользователя (не часто), либо найдите его.

Привязка к каталогу LDAP в качестве прокси-пользователя или анонимная привязка. Запросите ATTR = VALUE, где ATTR - это то, что вы определяете как уникальное значение в каталоге. Традиционно это UID на серверах LDAP. Для Active Directory, вероятно, было бы лучше искать ATTR sAMAccountName. Сохраните это как параметр настройки для администратора, так как это облегчит работу на разных внутренних серверах LDAP.

Это может быть почта, а логин, который вводит пользователь, это его адрес электронной почты. Зависит от варианта использования. Но оставьте его настраиваемым, чтобы быть гибким.

Затем поиск должен вернуть одно значение с полным DN, после чего вы хотите привязать как этого пользователя с полным DN и предоставленным паролем. Мне нравится подход связывания в качестве пользователя вместо сравнения пароля, поскольку с тех пор вы увеличиваете любые атрибуты последнего входа в систему и т. П., Упрощая обнаружение неактивности учетной записи с точки зрения администраторов каталогов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...