草庐IT

c++ - 不同域上的 Windows 用户凭据验证

我正在尝试在未加入域的计算机上验证用户的Windows凭据。看起来这应该可以使用SSPIAPI来完成,但我无法让它工作。我包含了我一直在尝试的代码(为简洁起见省略了资源清理)。这些是重要的信息:域Controller:control.dundermifflin.com域:DUNDERMIFFLIN用户:jim_halpert通过:beesly(我正在气隙网络上进行测试,因此与真正的dundermifflin.com没有任何DNS冲突。)我得到的错误是SEC_E_LOGON_DENIED。我确信用户名和密码是正确的,因为我可以使用该用户使用其他应用程序登录。谁能指出我正确的方向?#inc

c# - 如何使用提供的凭据调用 SSPI 的 'AcquireCredentialsHandle'?

背景WindowsSSPIAPI是Windows安全服务的一个接口(interface),允许您相互验证客户端和服务器。API的主要用途之一是提供Windows集成身份验证,也称为单点登录-应用程序能够通过使用用户登录时的凭据自动向服务器验证用户身份。这个过程的正常流程:用户登录他们的计算机,通常使用用户名和密码。用户运行一个应用程序,该应用程序使用SSPI对用户进行服务身份验证。该应用程序调用AcquireCredentialsHandle()获取用户登录时创建的现有凭据的句柄。应用程序使用AcquireCredentialsHandle()返回的句柄参与服务器的SSPI身份验证周期

c++ - 简单的客户端/服务器,TCP/IP 加密消息流,SSL (C++)

基本上我的问题与这个完全相同:Simpleclient/server,TCP/IPencryptingthemessagestream,SSL不同之处在于我需要它用于纯C++,而不是.NET。我不能使用第3方库,所以除非它是一个Windows系统组件(如上),否则我需要一些带有源代码的东西,这样我就可以得到一般的想法并自己构建它。谢谢:)引用另一个问题供引用:"WritingalittleTCP/IPclientserverapp.Basicallyitcreatesaserver,andthenyoucancreateseveraldifferentclientsandsetupab

c++ - InitializeSecurityContext (Schannel) 的 TLS 握手过程

我必须使用SSPI接口(interface)实现TLS握手过程。我的应用程序实现了客户端,正如我从here中看到的那样一般流程是:InitializeSecurityContext-第一次调用返回指向SecBufferDesc结构的指针。使用输出缓冲区调用发送(=WinSockAPI)函数。调用recv函数使用缓冲区再次调用InitializeSecurityContext。MSDN关于这些缓冲区的解释:"Oncallstothisfunctionaftertheinitialcall,theremustbetwobuffers.ThefirsthastypeSECBUFFER_TOK

c++ - 使用 MS SSPI 实现安全 SLL/TLS 客户端的可编译 C++ 代码

如这里所述http://www.ddj.com/cpp/184401688我没有时间从头开始写。问而不答https://stackoverflow.com/questions/434961/implementing-ssl问题是:我正在寻找一些可编译的工作源代码,它实现了MSSSPI(如上面的线程中提到的),首选程序而不是OOP。我在这里查看了代码项目示例:http://www.codeproject.com/KB/IP/sslclasses.aspx但这是C#OOP。将其转换为C++代码并非易事。OpenSSLSChannel调用遵循GSSAPI标准。当然,还有一些替代方案——例如O

php - 在 mod_auth_sspi_1.0.4-2.2.2 中禁用登录提示

我正在尝试做的事情:在我们公司的Intranet上创建一个主页,该主页会自动获取查看该页面的人的登录Windows用户名,而不会在页面加载时提示该人输入这些凭据。目前,我只希望它获取本地用户名,因为我们的IT人员还需要一段时间才能完成域设置。例如,现在我希望它在没有任何提示的情况下捕获“(PC-Name)\windows.user.name”。环境:Windows7x64上的Apache2.2.21(一旦投入生产,将在CentOS上运行)。PHP5.3.8(VC9-ZTS)。InternetExplorer9.0.8x和Firefox6.0.2(稍后会担心Chrome)。当前测试页面只

java.sql.SQLException : I/O Error: SSO Failed: Native SSPI library 异常

我有两个Web应用程序需要在Tomcat6、MSSQL2008和JTDS-1.2.2作为驱动程序上运行。如果我只启动一个Web应用程序,一切正常,但一旦我启动第二个应用程序,我就会收到以下错误(顺序无关紧要):java.sql.SQLException:I/OError:SSOFailed:NativeSSPIlibrary当然,库ntlmauth.dll在C:\WINDOWS\system32下似乎启动的第二个应用程序无法找到用于单点登录的ntlmauth.dll。 最佳答案 我通过更改url从解决了这个问题jdbc:jtds:s

java - 人们如何使 Java SPNEGO 客户端在 Windows 中工作?

为了在Windows上使用Java进行客户端HTTPSPNEGO身份验证,您需要设置Windows注册表项allowtgtsessionkey.这是有据可查的。我不明白的是人们如何解决这个问题?大多数公司站点永远不会接受为了单个软件而更改Windows中的此注册表项。如果需要在组织中的每个工作站上进行更改,还要考虑麻烦。但这只是理论,因为到目前为止我无法说服我们的任何客户更改此注册表项。我不怪他们。大多数公司管理员会认为这是一种放松的安全措施,因此会反对它。我读过这个:IsthereawayinJavaoracommand-lineutiltoobtainaKerberosticket

fiddler-----Authentication.AuthenticationException 调用 SSPI 失败,请参见内部异常

今天使用fiddler工具做一个SAAS项目:返回:System.Security.SecurityExceptionFailedtonegotiateHTTPSconnectionwithserver.fiddler.network.https>HTTPShandshaketohttp:***********failed.System.Security.Authentication.AuthenticationException调用SSPI失败,‘\n’+'Win32(SChannel)NativeErrorCode:0x80090302为解决这个问题,思路1:找到浏览器的代理服务器设置,发

c# - 对 SSPI 的调用失败,请参阅内部异常 - 无法联系本地安全机构

我有一个WPF应用程序,它使用SSLStream连接到服务器并发送/接收一些消息。我的代码主要基于此示例(SslTcpClient):https://msdn.microsoft.com/en-us/library/system.net.security.sslstream(v=vs.110).aspx.这在几个月内都运行良好。但是,在获得此Windows更新后(Windows10版本1511和WindowsServer2016技术预览版4的累积更新:2016年6月14日-https://support.microsoft.com/en-us/kb/3163018)。我的应用程序开始报