问题标签 [kerberos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 来自 Java 的 kerberos - 为当前经过身份验证的用户获取主题
我们公司有一个 kerberos 域,我正在运行一些 Java/Kerberos示例。我的问题是从服务器的角度来看登录机制。运行服务器示例GssServer.java
时,我需要得到一个javax.security.auth.Subject
;在提供的代码中,这是通过一个LoginContext
因此:
这一切都好,当我运行示例时,我看到了一个可爱的登录提示。然而,我的问题是,这并不是我的服务器将如何运行,也不是我如何被引导理解我应该如何从 kerberos 域中呈现服务。在GssServer
示例中,问题是我的服务器(读取:服务)不应该需要对自身进行身份验证KDC
以便向客户端提供其服务。访问服务器端keytab
文件应该足以做到这一点。所以对于示例配置:
在 Java 代码中:
这样做的问题是文件中的server
信息jaas-krb5.conf
不可用,除非我通过以下行验证自己:
我不应该通过这个身份验证!但是,如果我不验证自己的身份,我最终会得到:
有问题也就不足为奇了。毕竟,除非我掌握了这个server
主题,否则我怎么知道我在哪里keytab
,或者我在提供什么服务?
所以我的问题是:如何GSS API
在不通过代码验证自己的情况下告诉密钥表/服务?
java - Java中的Kerberos身份验证-Java中的“登录”操作是否等于“kinit”?
我在 Java 中使用 GSSAPI 以便使用 Kerberos 身份验证登录到 LDAP 服务器。我是 Kerberos 的新手,所以如果这是一个明显的问题,我很抱歉,但我在互联网上找不到足够清楚的东西。
我执行以下步骤:
"java.security.auth.login.config"
通过将系统属性设置为配置文件路径来定义登录配置。LoginContext.login()
使用配置名称和自定义回调处理程序调用- 如果登录成功,“假装是”主题(通过使用),并通过使用适当的环境变量
Subject.doAs()
创建一个新的连接到 LDAP 服务器。InitialLDAPContext
现在,我的问题是我不明白哪个步骤与哪个 kerberos 操作相关?说登录操作后我只有一个 TGT 是否正确?我什么时候可以得到服务特定的票?
谢谢, 迪克拉
web-services - 如何使用 Delphi 获得 Kerberos 票?
是否有示例显示 Delphi 如何调用 Active Directory Kerberos 服务器来请求票证授予票证/普通票证?
背景:验证交换机密信息的网络服务需要票证。
编辑:一个简短的源代码示例将非常有帮助。我发现了令人印象深刻的JEDI Windows 安全代码库。我不确定它是否包含对 Kerberos 的支持。
sharepoint - 无法针对 ADAM 对 SharePoint Extranet 站点进行身份验证
项目背景: 我正在建立一个小型农场,其中 Intranet 是它自己的应用程序。遵循最小特权帐户设置原则,我为每个进程/应用程序创建了域用户帐户。水池。服务身份验证在 Kerberos 上运行良好。
其中一个项目需要有另一个 Web 应用程序(独立于 Intranet)通过 Internet 向客户公开。为了保持 AD 结构独立,我们决定使用 ADAM。该应用程序。池帐户是独立的,也使用 Kerberos。在https://blogs.pointbridge.com/Blogs/morse_matt/Pages/Post.aspx?_ID=2之后,我扩展了我的原始应用程序并将其配置为分配 LDAPMembership 提供程序的 Extranet 区域,如文章中所述。
困境 虽然人员选择器工作并允许我从 AD 和 ADAM 数据存储中指定集合管理员、站点所有者、成员等,但我无法登录我的用户。我经常收到用户无法通过身份验证的错误. 并且非常好,LOG 不会产生与目录查找相关的错误。似乎从未命中 ADAM 数据存储。
根据 MS 文章,我自己的想法是,因为我不使用 NTLM,爬虫永远不会到达 Extranet 区域。然而,如果我们都知道 Kerberos 优于 NTLM,我应该如何保护应用程序。
任何想法将不胜感激。
注意:SPN 已正确设置,权限已按要求分配,ADAM 用户已禁用设置为 false,app. 池帐户列在 ADAM 内的 Readers 角色容器中
谢谢,杰克
internet-explorer - 一台计算机无法向 TFS 或 Exchange 进行身份验证
我有几台计算机......只有一台无法通过我的交换或 TFS 服务器进行身份验证。(我家中有 2 台计算机试图连接到我们工作中的 exchange/tfs 服务器,其中一台是问题所在)。其他几名员工没有任何连接问题。
我看到的错误是
401 2 2148074254
401 1 0
401 1 2148074252
经过大约 2 天的搜寻,我准备重新安装计算机并从头开始。据我所知,它们设置相同。
我无法使用 Firefox 而不是 IE 连接到 Exchange OWA。TFS 也一样。我已经重置了 IE(使用此 URL 上的工具:http: //support.microsoft.com/kb/923737 - 如果您还没有看到它,您应该阅读说明,这很有趣)。我已经比较了有效和无效的可信站点设置。我还比较了“高级”设置,没有发现任何差异。凭据可在第二台计算机上完美运行,从而消除了任何与防火墙相关的过滤问题。
我完全不知道还能尝试什么。有没有人有任何想法?
wcf - 服务器使用用户帐户的 WCF Kerberos 客户端模式
我们有一个 WCF(Windows Communication Foundation)客户端和服务应用程序。我们正在使用带有 Kerberos 的 Windows 身份验证。
问题是该服务可能在许多帐户之一下运行(可能是网络服务,也可能是特定用户帐户——取决于 IT 组)。此帐户不可能每天更改,但可能偶尔更改(可能每隔几个月)。此外,我们将此客户端/服务包提供给多个组,每个组可能有自己的帐户用于运行服务(这只是为了让您知道我们不能为单个团队提供自定义解决方案)。
现在上一段出现问题的原因显然是如果服务没有在 SYSTEM 或 NETWORK SERVICE 帐户(即用户帐户)中运行,则客户端必须在其端点的身份中指定用户帐户的名称。
有关此限制的更多信息,请参阅: http ://social.msdn.microsoft.com/Forums/en-US/wcf/thread/feb6bc31-9a4b-4f8d-a887-ef6d2c7abe41 和http://www.vistax64.com/indigo /146204-using-localhost-vs-environment-machinename.html
现在这似乎很难处理 IT 部门更改运行服务的帐户的情况。如果有的话,处理这个的模式是什么?其他人是如何处理这个问题的?我想到的一个解决方案是,当服务的用户帐户发生更改时,管理员会发送一封电子邮件,其中包含指向更新客户端或配置文件的应用程序的网络链接,因此客户端引用新的用户帐户. 但这似乎很骇人听闻。
诚然,这很像端点移动的 URI。除了,我认为人们对更改 URI 是客户端必须知道的事情有更多的期望,但是更改运行服务的帐户对客户端来说应该是相对透明的。
顺便说一句,这需要托管在 IIS 7.0 上,如果这很重要的话。
java - authenticate with ntlm (or kerberos) using java UrlConnection
I need to consume a rest web service with java, passing the credentials of a domain user account.
right now I'm doing it with classic asp
and with asp.net
how can I achieve this with java? Take into account that I'm not using the credentials of the currently logged user, I'm specifing the domain account (I have the password)
please tell me it's as easy as with classic asp and asp.net....
windows - 在 Silverlight 中获取当前 Windows 用户名
是否可以使用 Silverlight 获取当前登录用户的用户名?您可以假设用户具有 Windows 操作系统并且 Silverlight 应用程序托管在 Internet Explorer 中。使用 ASP.NET 从服务器端获取身份不是一种选择,此 Silverlight 应用程序将托管在静态 HTML 文件上。
windows - 使用 Windows 凭据进行 Web 登录
我们的公司网络 (SharePoint 3) 上有一个 Intranet 站点。如果我通过 Internet Explorer 查看它 - 我已经登录。如果我使用 Firefox 查看它,我必须输入我的 Windows 用户名和密码。
我的问题是这样的:
为什么浏览器之间存在这种差异?微软在 IE 中是否有一些专有插件可以启用此自动登录?我可以在 Firefox 中实现自动登录吗?
非常感谢。
asp.net - asp.net 通过 kerberos 集成 windows 身份验证到 sql server
拜托,有人可以提供一种简单直接的方法来启用 ASP.NET > Kerberos > Sql Server 吗?
我们有clientMachine > webServer > databaseServer。客户坚持网站必须拉取 Windows 登录而不提示,因此需要 Kerberos 和集成身份验证。它还必须将用户模拟到数据库服务器上,从而引发双跳。
我们的域是一个 Windows 2003 域,据我所知,这意味着 Kerberos 已启用。在加入域的计算机上,登录时,kerbtray 向我显示我有大量票证,因此它显然可以正常工作。
AD 中的 Web 和数据库服务器计算机帐户都是“受信任的委派”。
必须访问系统的 AD 用户帐户都是“受信任的委派”。
当一切正常时,我会添加更多用户,现在是两个。
Sql Server 实例在数据库服务器上的 LocalSystem 下运行,据我所知,这意味着它根本不需要弄乱那些 SPN 的东西。
然而,当我尝试使用任一用户登录时,我得到
表示双跳失败。进一步的事实是,在 db 服务器上的应用程序日志中有大量来自“MSSQL”的条目说同样的事情。
我真的不敢相信这有多难……我的意思是,IIS、SQL 和 Windows 都是微软,他们不能说得更好吗???
总而言之,我有
- kerberos 域,
- db 和 web 服务器都受信任的委派
- 受信任委托的用户
- AD 组中的用户
- AD 组作为 sql 中的登录名(和 db 中的用户)
- IIS 关闭匿名、集成打开、基本和摘要关闭
- 启用集成的 IE