Spec-Zone .ru
спецификации, руководства, описания, API
|
Аутентификация обзора-MD5 является необходимым механизмом аутентификации для LDAP v3 серверы (RFC 2829). Поскольку использование SASL является частью LDAP v3
Механизм Обзора-MD5 описывается в
Чтобы использовать механизм аутентификации Обзора-MD5, следует установить свойства среды аутентификации следующим образом.
following example
шоу, как клиент выполняет аутентификацию, используя Обзор-MD5 для сервера LDAP.
// Set up the environment for creating the initial context Hashtable<String, Object> env = new Hashtable<String, Object>(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, "ldap://localhost:389/o=JNDITutorial"); // Authenticate as C. User and password "mysecret" env.put(Context.SECURITY_AUTHENTICATION, "DIGEST-MD5"); env.put(Context.SECURITY_PRINCIPAL, "dn:cn=C. User, ou=NewHires, o=JNDITutorial"); env.put(Context.SECURITY_CREDENTIALS, "mysecret"); // Create the initial context DirContext ctx = new InitialDirContext(env); // ... do something useful with ctx
Область определяет пространство имен, из которого выбирается объект аутентификации (значение свойства Context.SECURITY_PRINCIPAL). У сервера могли бы быть многократные области. Например, сервер для университета мог бы быть сконфигурирован, чтобы иметь две области, один для его студенческих пользователей и другого для пользователей способности. Конфигурация области делается администратором каталога. У некоторых каталогов есть значение по умолчанию единственная область. Например, Сервер каталогов Java Sun, v5.2, использует полностью определенное имя узла машины как область значения по умолчанию.
В аутентификации Обзора-MD5 следует аутентифицировать к определенной области. Можно использовать следующее свойство среды аутентификации, чтобы определить область. Если Вы не определите область, то любая из областей, предлагаемых сервером, будет использоваться.
following example
шоу, как установить свойства среды для того, чтобы выполнить аутентификацию, используя Обзор-MD5 и указанную область. Чтобы заставить этот пример работать в Вашей среде, следует изменить исходный код так, чтобы значение области отразило то, что было сконфигурировано на Вашем сервере каталогов.
// Authenticate as C. User and password "mysecret" in realm "JNDITutorial" env.put(Context.SECURITY_AUTHENTICATION, "DIGEST-MD5"); env.put(Context.SECURITY_PRINCIPAL, "dn:cn=C. User, ou=NewHires, o=JNDITutorial"); env.put(Context.SECURITY_CREDENTIALS, "mysecret"); env.put("java.naming.security.sasl.realm", "JNDITutorial");
Если Вы должны использовать защиту конфиденциальности и другие свойства SASL, они обсуждаются в Учебном руководстве JNDI.