Мое веб-приложение использует аутентификацию Kerberos. Я установил NegotiateIdentityAsserter и провайдера аутентификации LDAP. Все работает нормально, если sAMAccountName является пользователем для поиска пользователя. К сожалению, в среде tagret этот атрибут не уникален. Мне нужно идентифицировать пользователя по его имени участника-пользователя.
Есть ли способ, как этого добиться?
Моя конфигурация
Weblogic 10.3.5
Java 1.6
login.config:
myrealm {
weblogic.security.auth.login.UsernamePasswordLoginModule required debug=true;
};
com.sun.security.jgss.initiate {
com.sun.security.auth.module.Krb5LoginModule required
principal="HTTP/ceprwlvyv.dsmsp.local@DSMSP.LOCAL"
refreshKrb5Config=true
useKeyTab=true
keyTab="c:/ccaapl/security/ceprwlvyv_ktpass.keytab"
storeKey=true
debug=true;
};
com.sun.security.jgss.accept {
com.sun.security.auth.module.Krb5LoginModule required
principal="HTTP/ceprwlvyv.dsmsp.local@DSMSP.LOCAL"
refreshKrb5Config=true
useKeyTab=true
keyTab="c:/ccaapl/security/ceprwlvyv_ktpass.keytab"
storeKey=true
debug=true;
};
com.sun.security.jgss.krb5.accept {
com.sun.security.auth.module.Krb5LoginModule required
principal="HTTP/ceprwlvyv.dsmsp.local@DSMSP.LOCAL"
refreshKrb5Config=true
useKeyTab=true
keyTab="c:/ccaapl/security/ceprwlvyv_ktpass.keytab"
storeKey=true
debug=true;
};
krb5.ini:
[libdefaults]
default_realm = DSMSP.LOCAL
kdc_timesync = 1
ccache_type = 4
ticket_lifetime = 600
clockskew = 1200
dns_lookup_kdc = true
[realms]
DSMSP.LOCAL = {
kdc = DSDC.dsmsp.local
}
[appdefaults]
autologin = true
forward = true
forwardable = true
encrypt = true
Заранее спасибо!
Петр