问题标签 [credential-providers]

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.

0 投票
1 回答
3068 浏览

visual-c++ - 使用 Windows 7 SDK 的凭据提供程序示例

我正在开发自定义 Windows 登录,以便用户可以使用网络摄像头(面部识别)或用户名和密码。我可以在登录屏幕上显示一个包含所有必需控件的窗口,但我不明白如何使用提供的用户名和密码进行身份验证。为此,Window 使用GetSerialize()函数。

以上是函数签名。如您所见,系统使用CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE*CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION*指针获取有关用户名和密码的信息。我如何调用它进行身份验证。或者在登录时有没有其他方法可以做到这一点。

0 投票
1 回答
713 浏览

winlogon - 来自凭据提供程序 DLL 的 HTTPS 请求

我一直在创建一个凭据提供程序 DLL,该 DLL 在允许登录之前通过 Internet 进行身份验证。但是,这并没有像我预期的那样工作,因为我的 WinHTTP 请求没有被发送。我已经用钢丝鲨证实了这一点。但我不知道为什么它没有发送任何请求。我已经检查过我的代码实际上是否正确地调用了这些函数——它们确实如此。但是http请求永远不会成功。在这一点上我有点困惑,我想知道在登录时是否有一些针对 https 请求的全面阻止。

0 投票
5 回答
22842 浏览

windows-7 - 在 Windows 中创建自定义凭据提供程序的文档

有关创建自定义 Windows 凭据提供程序的文档位于何处?到目前为止,我发现的所有内容都指向关于如何制作自定义凭据提供程序的同一篇文章(MSDN 杂志:“使用 Windows Vista 的凭据提供程序创建自定义登录体验”),但该文章和我能找到的任何其他内容都没有提供文档关于事情的实际运作方式。充其量只有一些代码示例,但这些示例并不能解释凭证提供者的完整机制,也不能有效地展示如何自行编写。

0 投票
3 回答
3621 浏览

c++ - 自定义 Windows 身份验证包

所以,这里是场景。我正在 Windows 7 中开发登录系统。我创建了一个凭据提供程序,其中包含一个凭据。凭据具有三个输入字段,用户名、密码和 PIN。

从我了解到的文档(CMIIW)中,当我们填写字段并单击登录时,WINLOGON 将检索用户名和密码,并通过调用 LSALogonUser() 将其发送给 LSA 进行身份验证。然后 LSA 将尝试与身份验证包 KERBEROS(用于远程登录)或 MSV1_0(用于本地登录)协商。

暂时只假设本地场景,用户名和密码将传递给MSV1_0,并与SAM数据库中的用户名和密码进行核对。现在的问题是,我不希望使用 SAM 数据库对其进行检查。假设我有一个文件 C:\users.txt ,其中包含三元组条目: {username ; 密码 ; 别针}。这里所有的用户名都是windows中的现有用户。我该如何做到这一点,以便按照我的方式进行身份验证(检查文件 C:\users.txt.

如果我没记错的话,我们可以创建自己的“包装”MSV1_0 的身份验证包。你们有一个示例代码吗?还是有其他更合适的方式?

谢谢你,我非常感谢你的帮助。

0 投票
1 回答
937 浏览

windows - 使用 MinGW 编译凭证提供程序

我从Microsoft找到了一些示例,但我不知道如何开始。

我有一个似乎是 VS 项目和一个带有注册表条目的文件。没有包含任何生成文件,也没有关于如何构建的任何说明。

我正在尝试将 G++ 编译器与 MinGW 一起使用。用例是简单的 http 身份验证。我用我的pam-http 项目在 Linux 上工作。

  • 如何编译一个简单的凭据提供程序?
  • 有没有提供构建脚本/makefile 的教程?

我非常希望尽可能使用 FOSS,因此使用 MinGW 和 g++,而且我在 Windows 上编译的经验很少(几年前我在工作中使用过 VS)。最终,我想在 cURL 中进行链接,但是一旦我构建了一些东西,我就可以弄清楚。

笔记:

我找到了这些,但我正在寻找使用 g++ 的构建脚本:

我同意kberson 的观点

编辑:

我在 MinGW 的网站上发现了这个,上面说链接到 MS VC 创建的 DLL 是可能的。

我不想使用 Visual Studio。我更喜欢不依赖于特定构建工具(如 ANT 或 make)的命令行编译工具。

0 投票
1 回答
953 浏览

c++ - 凭据提供程序和系统服务之间的 IPC

从系统服务与自定义凭据提供程序通信的最佳方式是什么?是否可以通过消息泵发送消息?我可以使用命名管道吗?任何建议,将不胜感激。

0 投票
1 回答
1180 浏览

c++ - 凭据提供程序上的禁用区域

我正在使用 cpp 为 Windows 7 开发凭据提供程序。我想在系统在后台工作时禁用文本框并提交按钮。为此,我尝试使用以下代码:

在这里SFI_EDIT_TEXT代表我想要更改它的属性并CPFIS_DISABLED显示它应该被禁用的对象(至少我认为是这样)。但我没有得到任何有用的结果。任何人都可以提供帮助吗?

0 投票
2 回答
1129 浏览

windows - 凭据提供程序通过网络进行通信

首先让我解释一下我想要的解决方案:

我正在制作一个自定义凭据提供程序,通过将登录凭据发送到外部身份验证服务器来对用户进行身份验证,然后将相同的凭据以及一些额外的身份验证参数传递回凭据提供程序。然后,凭据提供程序将这些凭据发送到本地安全机构,后者又根据自定义身份验证包对用户进行身份验证。

我对 Windows 编程很陌生,但我一直在研究 Credential Provider Technical Reference,所以我对它的工作原理有了一些了解。我还没有想到的是:在编写自定义凭据提供程序时,我可以像上面的示例中建议的那样对其进行编程以进行外部通信吗?我在某处读到我可以使用 WinHTTP 向凭据提供程序发送数据和从凭据提供程序发送数据。这个对吗?

问候, 巴泽拉

0 投票
2 回答
4103 浏览

windows-7 - 用于在硬件事件上自动登录用户的 Windows7 凭据提供程序

我正在为 Windows 7 开发自定义凭据提供程序。我的目标是在发生特定硬件事件时自动登录用户。我已经阅读了所有与此相关的 MSDN 文章,并实现了一个简单的凭据提供程序,它与外部设备接口以获取用户名和密码并将其传递给 WinLogon。

但是,我仍然坚持最后一块拼图。目前,用户仍然必须按下登录按钮才能登录。自动执行此操作的最佳方法是什么?

0 投票
1 回答
2405 浏览

wpf - 自定义 WPF 对话框中的 Windows 凭据提示

:如何在 WPF 中重用Windows 凭据对话框(WinForms32) 提供的安全功能?

头脑风暴(不确定这些是否可行):

  1. 在我自己的 WPF 对话框中托管 WinForms32 对话框。MSDN 有一篇文章解释了如何承载 WinForms控件(即文本框等)而不是 WinForms 对话框。是的,这会很丑,但我们现在并不担心外观。

  2. 提供包装 WinForms 对话框的 WPF GUI。登录后,WPF 用户名文本框和 WPFSecurePassword文本框在幕后转移到它们的 WinForms 等效项。敏感数据的移动可能会带来安全风险(但有些人可能会认为攻击者有很多其他方法可以窃取您的密码)。

  3. 将 WinForms 用户名和密码文本框移动到 WPF 对话框(“重新设置”现有文本框)。

感谢任何建议/评论(包括对我的想法的批评)!