c++ - C++ - 如何在 Credential Provider V1 (Vista-Win7) 中管理其他用户
问题描述
我为 Windows 10 的凭据提供程序 V2 开发了一个代码。我通过凭据提供程序的 V2 管理本地用户和活动目录用户以及 Windows 10 中的其他用户磁贴。
现在我开发了另一个用于 Windows 7 的代码。我使用 V1 凭据提供程序。我为显示本地用户定制了它。按照 _EnumerateOneCredential() 中的代码:
HRESULT CProvider::_EnumerateCredentials()
{
PNET_DISPLAY_USER pBuff, p;
DWORD i = 0, res, dwRec, index = 0;
do
{
res = NetQueryDisplayInformation(NULL, 1, i, 100, MAX_PREFERRED_LENGTH, &dwRec, (PVOID*)&pBuff);
if ((res == ERROR_SUCCESS) || (res == ERROR_MORE_DATA))
{
p = pBuff;
for (; dwRec > 0; dwRec--)
{
std::wstring name(p->usri1_name);
if (p->usri1_flags & UF_NORMAL_ACCOUNT && !(p->usri1_flags & UF_ACCOUNTDISABLE) && !(p->usri1_flags & UF_PASSWD_NOTREQD))
{
hr = _EnumerateOneCredential(index, name.c_str());
index++;
}
i = p->usri1_next_index;
p++;
}
NetApiBufferFree(pBuff);
}
} while (res == ERROR_MORE_DATA); // end do
return hr;
}
在此更改后,我的凭据提供程序是:
现在我想管理 Active Directory 用户,对我来说非常重要,管理(其他用户)平铺(图片中)。
我如何得到它?
如果我禁用其他登录方法(如密码提供程序或从过滤器使用),则只会显示我的凭据提供程序用户,而其他用户和 Active Directory 用户将被隐藏。
所以我认为,我必须获得到其他用户磁贴的链接并管理它,或者不。
谢谢。
解决方案
您必须实现并枚举您自己的Other User
图块。
CPFT_EDIT_TEXT
此磁贴必须接受并提供用户名 (UPN)、密码和您可能需要的任何其他凭据类型的输入字段。
推荐阅读
- java - 如何在java中用整数类型替换字符串中的字符串?
- tensorflow - 如何使用 tensorflow 创建这个自定义 ANN?
- shell - 使用 grep 根据特定条件记录表格的特定单元格
- kubernetes - 如何从 K3s 集群中的应用程序 pod 中删除机密的依赖关系
- github - Terraform CICD 管道 GCP
- java - 我的代码在硒中不起作用,需要帮助
- c# - Lambda Sum 子查询没有给出正确的结果
- css - 溢出:自动或溢出:滚动。滚动条显示但不工作
- excel - XML 到 Excel 映射(或 Access)的新手——想要保存和重复使用映射
- android - 使用一段时间后无法连接 Azure 通知 nhub