Лучшие практики LDAP

Вы не можете изменить длину массива. когда вы создаете массив типа int [] fixedLEngthArray = new int [n], вы в основном зарезервировали память для n int. если вам нужно n + 1, вам нужно будет создать новый массив, в который скопировать старый и вставить / удалить элемент.

5
задан Jason Plank 17 October 2011 в 20:29
поделиться

3 ответа

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

Для добавления пользователя к приложению необходимо выбрать один от LDAP или создать его в LDAP; когда пользователь удален из приложения, это остается в LDAP, но не имеет никакого доступа к приложению.

В основном необходимо сохранить только имя пользователя LDAP локально. Можно или считать данные LDAP (электронная почта, отдел и т.д.) от LDAP каждый раз, или вытянуть его в приложении в некотором роде, хотя чтение его от LDAP, вероятно, более просто и более умно, так как данные LDAP могут измениться. Конечно, если Вы нуждаетесь в создании отчетов или используете данные LDAP экстенсивно, Вы могли бы хотеть вытянуть его от LDAP (вручную или с пакетной задачей).

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

6
ответ дан 13 December 2019 в 19:36
поделиться

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

В моем колледже мы на самом деле реализовали CAS как единую точку входа против нашего сервера Active Directory. Мы также используем CAS для аутентификации наших приложений J2EE и работаем над использованием CAS для аутентификации наших приложений PHP.

Мы используем AD для содержания пользователей для домена. Существуют определенные OUs для на основе типа пользователя. Пользователи у каждого есть уникальный идентификатор, который, оказывается, их идентификатор студента/сотрудника, таким образом, приложения могут использовать это в качестве первичного ключа в их базах данных. У нас есть база данных управляемый метод авторизации для наших приложений PHP. Авторизация для приложения J2EE прибывает из значения в LDAP.

Удача с Вашим приложением.

1
ответ дан 13 December 2019 в 19:36
поделиться

Так, Вы хотите, чтобы пользователь ввел идентификатор только и затем захватил остальную часть их информации от LDAP? Это довольно легко.

  1. Создайте контекст LdapInitial и соединитесь с LDAP
  2. Сделайте поиск идентификатора (он должен быть сохранен как некоторое значение атрибута) - например, (И (userid=john) (objectClass=user)) - что означает "userid=john И objectClass=user"
  3. Объект SearchResult содержал бы все Атрибуты (или те Вы спросили),

Некоторые реализации LDAP (известный MS ActiveDirectory LDAP) не позволяют Вам соединиться с анонимным пользователем. Для тех у Вас должен быть технический идентификатор пользователя/пароль для соединения.

Как сказано выше, LDAP, обычно имеет смысл, когда у Вас есть много приложений.

P.S. Для чувства, какой LDAP является Studio Каталога Apache попытки.

0
ответ дан 13 December 2019 в 19:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: