Articles of kerberos

kerberos门票TGT和服务门票在Windows XP和Unix的path?

有人可以发送在Windows XP和UNIX的kerberos门票TGT和服务门票的path? 另外,我们如何知道windows和unix中使用的Kerberos的版本? 非常感谢,

如何在Tomcat / linux服务器上configurationKerberos?

我正在尝试在运行在Linux上的Tomcat上的Java web-app中设置Kerberos身份validation。 我正在使用spring security kerberos扩展。 我在用着: jdk 1.7u75 spring-security-kerberos 1.0.0.RELEASE MS活动目录 在我的本地开发机器(Windows)上一切运行良好。 但是,在将应用程序部署到一台linux机器后,身份validation不再起作用。 我强烈怀疑我的Kerberosconfiguration有问题: [libdefaults] default_realm = INT.MYCOMPANY.DE ccache_type=4 kdc_tymesync=1 forwardable=true proxiable=true [realms] INT.MYCOMPANY.DE = { admin_server = xyz.mycompany.de kdc = xyz.mycompany.de } [domain_realm] .INT.MYCOMPANY.DE = INT.MYCOMPANY.DE int.mycompany.de = INT.MYCOMPANY.DE .int.mycompany.de = INT.MYCOMPANY.DE .mycompany.de = INT.MYCOMPANY.DE mycompany.de = INT.MYCOMPANY.DE [logging] #kdc = console (服务器和领域名称已更改) Spring安全configuration: […]

使用httpclient \ kerberos以编程方式设置用户名,而不是提示

我有一个linux \ java6客户端,它将通过KERBEROS向sharepoint2010进行身份validation,然后使用Apache Commons HttpClient 4.2发送HTTP REST Web服务 如果我在连接我的客户端运行之前,从命令行"kinit myuser@mydomain"运行平滑。 我的问题是,如果我不运行kinit,我得到一个用户名提示。 如何在不提示用户名的情况下以编程方式进行身份validation,而无需运行命令行程序? (我创build和keytab,并在login.conf中定义它,以便照顾密码提示,而不是用户promt) public static void main(String[] args) throws Exception { System.setProperty("java.security.auth.login.config", "login.conf"); System.setProperty("java.security.krb5.conf", "krb5.conf"); System.setProperty("sun.security.krb5.debug", "true"); System.setProperty("javax.security.auth.useSubjectCredsOnly","false"); DefaultHttpClient httpclient = new DefaultHttpClient(); try { httpclient.getAuthSchemes().register(AuthPolicy.SPNEGO, new SPNegoSchemeFactory()); Credentials use_jaas_creds = new Credentials() { public String getPassword() { return null; } public Principal getUserPrincipal() { […]

对Windows使用Kerberos无法正常工作

我正在尝试使用Ansible 1.9.0.1来configuration使用域用户名的Windows服务器。 我已经成功地安装了Linux Ansible控制盒,并且已经能够使用基本authentication来运行可靠/可靠的剧本播放。 但是,与域用户一起运行失败。 在Windows节点上启用Kerberos: winrm get winrm/config/client/auth Auth Basic = true Digest = true Kerberos = true Negotiate = true Certificate = true CredSSP = true 我试图运行的剧本只是引用了ansible的win_ping模块,下面是输出: PLAY [Manage SMI] ************************************************************* TASK: [Ping] ****************************************************************** <host1> ESTABLISH WINRM CONNECTION FOR USER: on PORT 5985 TO >host1 <host1> ESTABLISH WINRM CONNECTION FOR USER: on PORT […]

Git为Windows,域Kerberos + SSH到Linux服务器?

我一直在对着办公桌扑着我的头,试图为开发人员提供一个开箱即用的windows工作站。 这已经100%在Linux上,您kinit,然后你ssh没有被提示。 Active Directory域充当Kerberos服务器,KDC等。我的Linux客户端可以从中获得他们的Kerberos票据,并将它们传递给我的Linux服务器,没有任何问题。 事实上,我已经被Kerberos广告烧死了,我知道它非常不幸。 通常在Linux客户端,我必须有一个适当的krb5.conf,git的Windows支持这种types的configuration? 我只是把一个在“etc”目录? 谢谢,我感谢任何帮助,在“git for windows”上复制这个客户端体验……或者得到明确表明这实际上不可能的硬性确认。

匿名,身份validation,模拟和委托有什么区别,为什么委托需要Kerberos?

当我们的客户安装我们的软件时,他们经常select“拆分式安装”,其中服务在一个盒子上运行,数据库在另一个盒子上。 服务可能会与其他服务交谈,或者数据库可能包含需要与另一个数据库交谈的存储过程。 这导致我们进入了Kerberos和SetSPN的黑暗世界。 我正准备给支持小组发送一封电子邮件,打破Windows支持的各种authentication级别的差异,但是我意识到我的知识对于模拟和委托之间的区别有点模糊,而且我很粗略到Kerberos。 任何人都可以启发我吗?

在Windows下将pypi的Kerberos添加到Anaconda

完整的小白菜,所以将不胜感激一步一步的解决scheme。 我想添加Kerberos包到Anaconda,但不知道如何去做。 我已经尝试使用conda命令行: pip install kerberos但是失败了。 有谁知道如何去做呢? 这是来自pip的错误日志: C:\Users\woodas\AppData\Local\Continuum\Anaconda\Scripts\gcc.bat -DMS_WIN64 -mdll -O -Wall -IC:\Users\woodas\AppData\Local\Continuum\Anaconda\include -IC:\Users\woodas\AppData\Local\Continuum\Anaconda\PC -c src/kerberos.c -o build\temp.win-amd64-2.7\Release\src\kerberos.o '{' is not recognized as an internal or external command, operable program or batch file. gcc.exe: error: '{': No such file or directory gcc.exe: error: is: No such file or directory gcc.exe: error: not: No such […]

IIS:将Kerberos用于不在域中的客户端计算机

一台不属于域(但是在networking上)的计算机是否可以通过IIS8发布的网站进行身份validation,其中该网站的身份validation仅与“Negotiate:Kerberos”的单个提供程序“Windows身份validation”(并禁用内核模式身份validation)? 我问,因为我正在尝试做到这一点,但我不能通过身份validation到网站(但单独尝试将身份validation传递到数据库)。 我在客户端的响应中看到了“WWW-Authenticate:Negotiate”标题,但客户端似乎只在随后的(重新)请求中发送“NTLM Type1:Negotiation”(NTLMS Type1:Negotiation)(NTLMSSP)。 无论是我还是不正确地解释Fiddler2的结果! 我正在使用Kerberos,因为大多数客户端将是域计算机,我需要将用户凭据从Web应用程序传递回数据库。 我希望能够对非域名计算机做同样的事情,他们只会被提示input一个用户名/域名/密码,这个用户名/域名/密码将被validation并转换成服务器上的Kerberos票据。 请注意,出于testing目的,Windows 8既是服务器又是客户端。 在生产中,服务器将是Windows 2008 Server R2,客户端将主要是Windows 7(尽pipe会有一些Windows 8客户端)。

在Silverlight中获取当前的Windows用户名

是否有可能使用Silverlight获取当前login用户的用户名? 您可以假定用户具有Windows操作系统,并且Silverlight应用程序托pipe在Internet Explorer中。 使用ASP.NET从服务器端获取身份不是一个选项,这个Silverlight应用程序将托pipe在一个静态HTML文件上。

Kerberos双跳在ASP.NET 4.0和SQL2008R2中

我有一个ASP.NET 4.0应用程序,我需要将身份validation转发到数据库。 为了这个请求的帮助,让我们调用Web服务器“app1”和数据库服务器“sql1”。 SQL2008R2数据库服务作为自定义域帐户“SqlServer”下的命名实例“SQL2008R2”运行。 该服务器正在运行Windows Server 2008 R2企业版。 我为此创build了一个SPN … setspn -a MSSQLSvc/sql1.mydomain.local:SQL2008R2 SqlServer ASP.NET应用程序在集成pipe道模式下使用自定义域帐户“WebApplicationUser”在应用程序池下运行。 它目前运行在运行Windows 7 Enterprise的笔记本电脑上,但最终将托pipe在Windows Server 2008 R2标准版上。 我已经为应用程序创build了2个SPN(在我正在运行的Windows 7机器上)… setspn -a http/app1 WebApplicationUser setspn -a http/app1.mydomain.local WebApplicationUser 在Active Directory用户和计算机中,我select了“WebApplicationUser”帐户,并使用任何协议(我也尝试使用Kerbero)启用了“MSSQLSvc / sql1.mydomain.local:SQL2008R2”的约束委派。 该应用程序在IIS 7.5中设置,并且设置为禁用匿名,基本,摘要和表单,同时启用“ASP.NET模拟”和“Windows”。 Windows身份validation已closures“扩展保护”并启用“内核模式身份validation”。 提供商是按照“协商”和“NTLM”的顺序。 ASP.NET应用程序使用EF,并将连接stringconfiguration为使用集成安全性。 <connectionStrings> <add name="MyContext" connectionString="metadata=res://*/Data.MyModel.csdl|res://*/Data.MyModel.ssdl|res://*/Data.MyModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=sql1.mydomain.local\sql2008r2;Initial Catalog=MyDatabase;Persist Security Info=false;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> </connectionStrings> 我的networkingconfiguration既指定Windows身份validation和模拟,因为我使用asynchronous页面,我也已启用inpersonation策略stream动… […]