spnego

Windows Kerberos 身份验证和网络协议/端口
spnego

Windows Kerberos 身份验证和网络协议/端口

有以下问题。我有一个带有根域 A 的 Windows 林 A。域 A 中的 Web 服务器具有正确设置的 SPN。用户来自另一个林/域,其中存在双向传递林信任。来自域 B 的用户登录到域 A 中的工作场所。域 B 所属的林可以通过域和信任中的名称后缀路由设置将 SPN 解析为林 A。现在,一切正常。使用 wireshark,我对 Web 服务器和域 B 的域控制器之间的身份验证流量进行了一些分析。我看到端口 tcp/88 kerberos 上的流量,获取所有必需的票证,我看到一些 LDAP 流量 udp/389,以验证通过 ldap 绑定进行的模拟,但随后我...

Admin

具有多个域控制器和多个应用程序服务器的跨领域 Kerberos/SPNEGO 配置
spnego

具有多个域控制器和多个应用程序服务器的跨领域 Kerberos/SPNEGO 配置

我目前正在努力扩展多服务器环境的一对一简单 Kerberos/SPNEGO 配置并寻求一些帮助。 假设 我有两个 Active Directory 域和两个领域EXAMPLE1.COM,并EXAMPLE2.COM与它们关联, 我在它们两个中都有多个域控制器(分别是dc1.example1.com、dc2.example1.com和),dc1.example2.comdc2.example2.com 我还在两个不同的服务器上部署了两个 PHP 应用程序实例app1.example1.com,并且在它们前面有app2.example1.com一个 NGINX ...

Admin

FastAPI REST 应用程序下的 Kerberos SPNEGO 与 OIDC 进行协商?
spnego

FastAPI REST 应用程序下的 Kerberos SPNEGO 与 OIDC 进行协商?

我们有一个基于 REST 的应用程序(非浏览器应用程序),它使用基于 Kerberos 的 SPNEGO 身份验证,并且一直在与 Flask 配合使用。我们想将此应用程序转换为在 FastAPI 下运行,但我们还没有想出如何使用 OIDC 让 Kerberos 协商在 FastAPI 下工作。 在我们的(非 OIDC)Flask 应用程序中,我们在客户端运行以下代码来发送我们的 REST 请求: auth = HTTPKerberosAuth(mutual_authentication=OPTIONAL, principal="") rest_respons...

Admin

使用与 Windows AD 集成的 Kerberos 的用户联合,浏览器和 Keycloak 之间的 SSO 不起作用
spnego

使用与 Windows AD 集成的 Kerberos 的用户联合,浏览器和 Keycloak 之间的 SSO 不起作用

我正在尝试使用浏览器(Chrome 或 Firefox)和配置了用户联合 AD 域(已配置 kerberos)的 keycloak 来使 SSO 工作。 首先,我介绍一下我所拥有的内容,然后添加更多细节。 概述: 调用授权端点“.../auth/realms/test_realm/protocol/openid-connect/auth”并使用 tcpdump 我可以看到: 浏览器向授权端点发送带有必要参数的获取请求 Keycloak 正确响应: -带有 401 Unauthorized -带有标头“WWW-Authenticate: Negotiat...

Admin

OpenCms:使用 httpd+Tomcat 进行 Kerberos SSO 身份验证
spnego

OpenCms:使用 httpd+Tomcat 进行 Kerberos SSO 身份验证

我在 OpenJDK 11 上安装了独立的 httpd+Tomcat 8.5.65,并安装了 OpenCms 11.0.2,用于客户的内部网站。 他们有一个 LDAP 网络,并请求使用 Kerberos (krb5) 进行自动登录。 我们配置了 SPNego 并且它在 Tomcat 上运行:一个测试 JSP 页面,包括代码: <%= request.getRemoteUser() %> 直接通过 tomcat(端口 8080)访问时,可以正常工作(打印用户名)。但是当我通过 Tomcat 访问 OpenCms 时,此身份验证不起作用。具体来...

Admin

通过 https 和 Kerberos(Windwos 集成)身份验证访问时,Subversion 存储库会抛出 HTTP 403 错误请求
spnego

通过 https 和 Kerberos(Windwos 集成)身份验证访问时,Subversion 存储库会抛出 HTTP 403 错误请求

我们在服务器端使用不同版本的操作系统和 Subversion 时遇到了这个问题,以下细节相同: 我们使用 https 协议访问 SVN 存储库。 我们使用了 Apache HTTPD + mod_dav_svn + mod_authz_svn。我们还使用了 mod_auth_kerb 或 mod_auth_gssapi。 用户通过 Windows 集成身份验证进行身份验证。特定组的成员被允许访问 SVN 存储库。 客户端是 Windows 工作站,具有相当新的 SVN 版本(1.13-1.14)。 一些客户端运行正常,其他客户端在访问 SVN 存储库时收...

Admin

Kerberos 客户端从服务器收到 KRB_AP_ERR_MODIFIED 错误
spnego

Kerberos 客户端从服务器收到 KRB_AP_ERR_MODIFIED 错误

我遇到了 Kerberos 身份验证失败的情况。 我已检查 SPN 是否在运行需要使用 Kerberos 来验证用户的服务的正确 AD 用户帐户下注册,而不是主机本身。 用户帐户的密码从未更改过,并且 DNS 或为服务器注册的 LIA 中没有重复的服务服务器名称,因此需要注册另一个 SPN。 我注意到的一个奇怪的事情(对我来说)是,在其中一台身份验证失败的客户端计算机的事件查看器中,我看到运行应用程序服务的 AD 用户名被返回为服务器 Kerberos 客户端从服务器收到 KRB_AP_ERR_MODIFIED 错误TUR_ServKebProd。使...

Admin

Kerberos - TCP 客户端需要 1195725856 字节,上限为 1048572
spnego

Kerberos - TCP 客户端需要 1195725856 字节,上限为 1048572

我在调试此错误时遇到了一些困难。我正在运行 nginx 作为 api 网关,每当使用 SPNEGO 方法调用端点时,都会向 kerberos 发出子请求。但每当我尝试在标头中使用 TGS 票证发出请求时,我都会收到错误,TCP client 192.168.112.4.51658 wants 1195725856 bytes, cap is 1048572然后连接就会关闭。 我尝试过printf "\xff\xff\xff\xff" | netcat krb_address 88并且它会触发上述错误,如果删除 \xff 的一个实例则不会出现错误。 我正在...

Admin

WebSphere SPNEGO - 无法从 JAAS 主题获取主体的凭证
spnego

WebSphere SPNEGO - 无法从 JAAS 主题获取主体的凭证

问题 尝试在 WebSphere 应用程序服务器 (WAS ND,单节点) 9.0.0.7 上启用 SPNEGO 时出现错误。我在另一台服务器上成功了,但对于这台服务器,我找不到问题所在。 我收到以下错误消息: org.ietf.jgss.GSSException, major code: 13, minor code: 0 major string: Invalid credentials minor string: Cannot get credential from JAAS Subject for principal: HTTP/[email&...

Admin

服务器上的机器帐户密码重置以及客户端上的 Kerberos 票证无效
spnego

服务器上的机器帐户密码重置以及客户端上的 Kerberos 票证无效

根据这篇 TechNet 文章https://blogs.technet.microsoft.com/askds/2009/02/15/machine-account-password-process-2/机器帐户(计算机对象)每 30 天重置一次内部密码。 我们假设该服务器正在运行带有 Kerberos SSO 的 IIS,因此它具有 SPN HTTP/server.domain.com,并且客户端已缓存用于访问该服务器上的资源的 Kerberos 票证。 如果 IIS 服务器密码的机器帐户每 30 天重置一次 - 它会使客户端上缓存的 Kerbero...

Admin

未考虑 Httpd LimitRequestFieldSize
spnego

未考虑 Httpd LimitRequestFieldSize

我在配置 httpd 以接受较大的 SPNEGO 身份验证标头时遇到问题。请求在授权标头行至少为 5674 字节时工作正常,但在授权标头超过 6178 字节时中断,答案如下: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>400 Bad Request</title> </head><body> <h1>Bad Request</h1> <p>...

Admin

委托在某些浏览器上有效,但在其他浏览器上无效
spnego

委托在某些浏览器上有效,但在其他浏览器上无效

我一直在尝试让 Kerberos 委派在所有浏览器上工作,但没有成功。我在 Linux 和 Windows 上运行 Java Web 服务器。 Linux 上的 Firefox(64 位):接收票证并且委托工作正常。我已适当设置了 network.negotiate-auth.delegation-uris 和 network.negotiate-auth.trusted-uris 首选项。 Linux 上的 Chrome(64 位):我收到了 Kerberos 票证,但委派不起作用。我尝试使用命令行功能 --auth-negotiate-delegat...

Admin

CentOS 服务器中的 Shibboleth SPNEGOAuthnConfiguration
spnego

CentOS 服务器中的 Shibboleth SPNEGOAuthnConfiguration

我的要求是用户已经加入域并使用来自 ldap 服务器的相同凭据登录,他们不想再次输入它来登录 shibboleth SSO,所以我搜索了 Shibboleth 文档,它已经支持基于 SPNEGO 的登录。 我有以下问题: 在 Cent OS 下运行的 shibboleth 服务器是否支持该协议? 如果它支持 Cent OS,我可以知道如何以及是否必须配置它与 Active Directory 通信吗? 如果它确实只支持 Windows 环境,那么我是否知道它是否仅当 Windows 服务器必须加入同一个域时才有效? 当前服务器环境 Centos ...

Admin

这个 Kerberos/AD 设置可行吗?
spnego

这个 Kerberos/AD 设置可行吗?

我们的 IDAM 设置略微复杂一些: 即,最终用户的机器和浏览器与父 AD 位于一个网络中,而我们基于 Jetty 的应用程序和它可以与之通信的 AD(本地 AD)位于另一个网络中。 两个 AD 之间存在双向信任。父网络中的浏览器在受信任的站点中拥有本地域。 Jetty 服务器的设置如下: 它使用针对本地 AD 中的主体生成的 keytab 文件 它作为 Windows 服务在本地 AD 中定义的用户下运行 领域、域-领域映射和 kdc 是根据本地 AD 的域定义的 它使用 spnego - isInitiator 设置为 false;doNo...

Admin