Alfresco — проблема единого входа Kerberos через 10 часов — учетные данные невозможно делегироватьJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Alfresco — проблема единого входа Kerberos через 10 часов — учетные данные невозможно делегировать

Сообщение Anonymous »

мы настроили единый вход Kerberos в Alfresco Community 7.3 (установка докера), и все работает правильно. Пользователь входит в Windows и получает доступ к Alfresco Share без необходимости ввода учетных данных.
Но система единого входа перестает работать для Alfresco Share через 10 часов (срок действия билета по умолчанию в AD) после запуска Alfresco. Делиться. Продление билетов Kerberos не работает для Alfresco Share. В журнале пишет предупреждение:

Код: Выделить всё

WARN  [site.servlet.KerberosSessionSetupPrivilegedAction] [http-nio-8080-exec-2] credentials can not be delegated!
Alfresco API (например, /alfresco/api/-default-/public/alfresco/versions/1/people/-me-) корректно работает с единым входом также через 10 часов и билетом Kerberos продлевается должным образом, но единый вход в Alfresco Share по-прежнему не работает. После перезапуска Alfresco Share система единого входа работает в течение нового 10-часового интервала.
ЖУРНАЛ из Alfresco Share

(настоящий домен заменен на DOMAIN .LOCAL, реальный пользователь заменен на имя пользователя, реальный принципал заменен на host.domain.local@DOMAIN.LOCAL)

Код: Выделить всё

Found KeyTab /etc/alfresco.keytab for HTTP/host.domain.local@DOMAIN.LOCAL
Found ticket for HTTP/host.domain.local@DOMAIN.LOCAL to go to krbtgt/DOMAIN.LOCAL@DOMAIN.LOCAL expiring on Mon Dec 02 20:53:26 CET 2024
Removed and destroyed the expired Ticket
Destroyed KerberosTicket
Found ticket for username@DOMAIN.LOCAL to go to HTTP/host.domain.local@DOMAIN.LOCAL expiring on Mon Dec 02 20:53:26 CET 2024
Removed and destroyed the expired Ticket
Destroyed KerberosTicket
Entered Krb5Context.acceptSecContext with state=STATE_NEW
Looking for keys for: HTTP/host.domain.local@DOMAIN.LOCAL
Added key: 18, version: 14
>>> EType: sun.security.krb5.internal.crypto.Aes256CtsHmacSha1EType
default etypes for permitted_enctypes: 18.
>>> EType: sun.security.krb5.internal.crypto.Aes256CtsHmacSha1EType
MemoryCache: add 1733214106/000040/337274E60DE6EBB25D556DFE9379D79E49896CA751E2E9E323D7E6E85615F44E/username@DOMAIN.LOCAL to username@DOMAIN.LOCAL|HTTP/host.domain.local@DOMAIN.LOCAL
>>> KrbApReq: authenticate succeed.
Krb5Context setting peerSeqNumber to: 1696515610
>>> EType: sun.security.krb5.internal.crypto.Aes256CtsHmacSha1EType
Krb5Context setting mySeqNumber to: 805644649
>>>  Constrained deleg from GSSCaller{UNKNOWN}
2024-12-03T09:22:04,007 [] WARN  [site.servlet.KerberosSessionSetupPrivilegedAction] [http-nio-8080-exec-2] credentials can not be delegated!
Наша установка:

[*]AD/DC: win2019
[*]Клиентский ПК: Win10
[*]Сервер Alfresco: Хостовая ОС (Ubuntu 24) с док-контейнерами — Alfresco 7.4 CE — OpenJDK 17.0.6
< /ul>
alfresco-global.properties

(настоящий домен заменен на DOMAIN.LOCAL, реальный пароль заменен на секретный)

Код: Выделить всё

# Configuration of authentication chain
authentication.chain=kerberos1:kerberos,alfinst:alfrescoNtlm,ldap1:ldap-ad

# Kerberos configuration
kerberos.authentication.realm=DOMAIN.LOCAL
kerberos.authentication.sso.enabled=true
kerberos.authentication.user.configEntryName=Alfrecso
kerberos.authentication.defaultAdministratorUserNames=Administrator,admin
kerberos.authentication.cifs.enabled=false
kerberos.authentication.http.configEntryName=AlfrescoHTTP
kerberos.authentication.http.password=secret
kerberos.authentication.http.allowGuest=false
kerberos.authentication.http.allowed.useragents=.*
krb5.conf

(реальный домен заменен на DOMAIN.LOCAL, реальный адрес сервера AD заменен на ad.server.address)

Код: Выделить всё

[libdefaults]
default_tkt_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
default_tgs_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
permitted_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
default_realm = DOMAIN.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = true

[realms]
DOMAIN.LOCAL = {
kdc = ad.server.address
admin_server = ad.server.address
}

[domain_realm]
.domain.local = DOMAIN.LOCAL
domain.local = DOMAIN.LOCAL
jaas.config — ACS

(настоящий субъект заменен на host.domain.local@DOMAIN.LOCAL)

Код: Выделить всё

 Alfresco {
com.sun.security.auth.module.Krb5LoginModule sufficient;
};

AlfrescoHTTP
{
com.sun.security.auth.module.Krb5LoginModule required
storeKey=true
useKeyTab=true
doNotPrompt=true
keyTab="/etc/alfresco.keytab"
principal="HTTP/host.domain.local@DOMAIN.LOCAL";
};
com.sun.net.ssl.client {
com.sun.security.auth.module.Krb5LoginModule sufficient;
};

other {
com.sun.security.auth.module.Krb5LoginModule sufficient;
};
jaas.config — общий доступ

(реальный принципал заменен на host.domain.local@DOMAIN.LOCAL)

Код: Выделить всё

Alfresco {
com.sun.security.auth.module.Krb5LoginModule sufficient;
};

ShareHTTP
{
com.sun.security.auth.module.Krb5LoginModule required
storeKey=true
useKeyTab=true
doNotPrompt=true
keyTab="/etc/alfresco.keytab"
principal="HTTP/host.domain.local@DOMAIN.LOCAL";
};

com.sun.net.ssl.client {
com.sun.security.auth.module.Krb5LoginModule sufficient;
};

other {
com.sun.security.auth.module.Krb5LoginModule sufficient;
};
share-config-custom.xml

(настоящий домен заменен на DOMAIN.LOCAL, реальный пароль заменен на секретный, реальный принципал заменено на host.domain.local@DOMAIN.LOCAL)

Код: Выделить всё




secret
DOMAIN.LOCAL
HTTP/host.domain.local@DOMAIN.LOCAL
ShareHTTP
true


Мы пробовали много изменений в AD/DC и групповой политике домена, пробовали множество решений, найденных на Stackoverflow и форуме Alfresco, но все безуспешно.
Любые идеи или помощь очень ценятся!
Заранее спасибо

Подробнее здесь: https://stackoverflow.com/questions/793 ... -delegated
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»