Articles of authentication

使用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() { […]

设置SFTP以使用公钥authentication

如何设置服务器到服务器的SFTP使用公钥authentication,而不是用户帐户和密码?

validation用户详细信息并自动loginWindows

我看到这个应用程序,可以从我们的用户名挖出来,并要求我们的密码。 为了安全起见,我input了错误的密码,可以交叉检查密码是否错误,并要求input正确的密码。 我的问题是: 你如何挖掘login用户的用户名? 如何validation给出的密码是否与真正用于login窗口的密码匹配? 我们如何通过在特定时间提供这些经过validation的细节,通过定时检查时间来自动login? 这在VB.NET中甚至是可能的 提前致谢

获取当前用户的最后一次login

我正在尝试获取当前的用户上次login。 我可能是这届本届会议,也可能是之前的会议。 我打电话GetUserName()获取当前的用户名。 我将其馈送到NetUserGetInfo()中以尝试获取上次login时间。 这一切都失败,错误2221(用户未find)。 当我用“pipe理员”尝试它的作品。 即使我硬编码我的用户名,它会返回一个2221.这就是我正在使用的: nStatus = NetUserGetInfo(NULL, L"administrator", dwLevel, (LPBYTE *) & pBuf); 你怎么能得到当前用户的最后login时间? 谢谢,代码总是欢迎。 这是我目前使用的完整代码: DWORD dwLevel = 2; NET_API_STATUS nStatus; LPTSTR sStringSid = NULL; LPUSER_INFO_0 pBuf = NULL; LPUSER_INFO_2 pBuf2 = NULL; WCHAR UserName[256]; DWORD nUserName = sizeof(UserName); if(GetUserName(UserName, &nUserName)) { printf("information for %ls\n", UserName); nStatus = NetUserGetInfo(NULL, UserName, dwLevel, […]

NetTcpBinding(读取WindowsStreamSecurityBindingElement)如何encryption/签名消息?

我想了解当Windows传输安全性使用“Windows”凭据时,NetTcpBinding使用的消息encryption和签名机制。 如果我的AD使用NTLM而不是Kerberos呢? 信息是否仍然被签名和encryption?如果是,如何? 提前致谢, Akshat

在C#3.0中的Windows本地用户帐户的身份validation

如何在C#3.0中validation本地windows用户帐户 我必须validation密码的Windows操作系统是Vista和Win2K8。 注意:用户帐户是本地帐户,不是域帐户。 我在C#3.5(PrincipalContext类)中find了一个解决scheme,但在3.0框架中找不到。 请build议,谢谢

Windows上的Java“单一login”(使用“Credential Manager”中的凭据)是否被禁用?

Oracle的Java SE 6文档中的“Http Authentication”页面指​​出:“如果您以域用户的身份在Windows计算机上运行,​​或者您正在运行已经发出kinit命令并获得证书的Linux或Solaris计算机上caching“,那么传递给Authenticator.setDefault()的实例将被完全忽略。 这符合我观察到的情况:在Windows系统上设置HTTP或HTTPS连接到主机X总是从“Windows Vault”的“Windows Credentials”传递主机X的凭据,如我的Windows 7“凭证pipe理器”控制面板页面。 但是 ,在我的用例中,我不想使用Windows可能存储的任何凭据,而是总是要使用我在代码中明确指定的凭据。 有没有办法来覆盖logging的行为,即是否有办法忽略由Windows存储的凭据? 更新:如果没有,有人可以指向我在Java SE 6源代码的地方,我可以看到存储的Windows凭据不能被忽略?

将用户凭据保存在Windows应用程序中

是否有一个最佳实践的方式来存储在Windows应用程序的凭据,无论是内置的API或只是一个推荐的encryptionalgorithm? 跟SVN,Spotify和Skype一样。 编辑:我的意图是使用Web服务,从它的身份validation服务返回一个令牌。 其他服务接受该令牌作为参数。 但是,令牌在30分钟后过期,因此存储令牌本身对于此任务来说毫无意义。

基于Java的Web应用程序的Windows身份validation,如何?

我有几个基于Java的Web应用程序开发。 这两个应用程序都有基于某个ActiveX目录实现的独立身份validation逻辑。 现在,我需要将其更改为Windows身份validation,以便每当用户点击我的Web应用程序的URL,而不是redirect到login页面,我需要检查他的Windows凭据。 我不想在URL中存储他的Windows凭据。 有没有什么好办法做到这一点?

在.net中针对域控制器validation用户凭据

在.NET应用程序中,我试图通过用户名和密码对Windows用户,本地用户以及域用户进行身份validation。 我已经试过这个解决scheme 。 我的代码来获取PrincipalContext看起来如下: protected static PrincipalContext TryCreatePrincipalContext(String domain) { var computerDomain = TryGetComputerDomain(); if (String.IsNullOrEmpty(domain) && String.IsNullOrEmpty(computerDomain)) return new PrincipalContext(ContextType.Machine); else if (String.IsNullOrEmpty(domain)) return new PrincipalContext(ContextType.Domain, computerDomain); else return new PrincipalContext(ContextType.Domain, domain); } protected static String TryGetComputerDomain() { try { var domain = Domain.GetComputerDomain(); return domain.Name; } catch { return null; } } 这对于本地Windows用户以及ActiveDirectory中的远程用户都可以正常工作。 […]