我想接入域用户登录系统并处理我自己的本地配置文件创建。我有两个基本相关问题:
- 如何拦截域用户身份验证?
- 我可以自己创建用户配置文件吗?
- 使用漫游配置文件不是一种选择
- 使用强制配置文件也不是一种选择
目标平台- Windows 7 企业版、专业版、家庭高级版(可选)
我不介意使用 Active Directory,但我更喜欢使用 Linux(Samba 4?)软件,因为我的服务器都将运行 Linux。这相对来说不相关,因为我只想要一些文档,甚至在 Google 上搜索什么。
编辑:我发现了这个关联在微软的 msdn 网页上。
我还发现这对开始定制 GINA 非常有帮助。
我需要任何特殊软件来创建身份验证包吗?我可以从此脚本访问 Web 或网络资源来验证凭据吗?
答案1
在这种情况下,您可以做的是创建一个以 LocalSystem 权限运行的 Windows 服务,并通过您的凭据提供程序与其进行通信。
当用户向 ICredentialsProvider 输入其凭证时,系统会联系 Windows 服务,然后该服务将处理身份验证。
身份验证成功后,服务应验证此类帐户是否存在于系统中,否则创建一个新的本地帐户网络用户添加并使用该帐户登录系统。
请记住,ICredentialsProvider 没有创建本地帐户或使用大多数 Net* 功能的权限,这就是我建议创建具有 LocalSystem 权限的 Windows 服务的原因。
答案2
如果您只想对配置文件进行少量更改,那么您可以考虑使用 Active Setup。
一旦您在机器上设置它,它将在用户的配置文件加载后立即运行,然后您可以对他们的文件/设置等进行特定于用户的更改。
答案3
这不是一个完整的答案,但我认为它是解决方案的一个重要补充。
在 Windows Vista 之前的基于 Windows NT 的系统中,微软使用 GINA(图形界面和身份验证)来运行大量用户登录的顶级身份验证,但也使用 WinLogin 来执行较低级别的身份验证。使用 GINA,程序员可以为 WinLogin 创建自定义 UI 和身份验证后端,而 WinLogin 会调用处理登录所需的方法。但和其他一切一样,随着 Vista 的推出,一切都发生了变化。
在 Vista 中,Microsoft 提供了一个名为凭证提供者它允许用户注册凭证提供者。 这里是一篇关于为什么放弃 GINA 的文章,同时也对新系统进行了很好的介绍。
由于这更多是基于编程而不是 IT,我将在 StackOverflow 上创建一个关于实现这一点的具体问题的问题。似乎不需要任何特殊软件。
第二个问题仍然存在。我会继续寻找答案,看看我是否可以自己创建个人资料。我认为这应该是可能的,但我不确定。
答案4
我知道大多数需要将信息输入新用户配置文件的地方都是通过某种方式修改默认用户配置文件来实现的。该配置文件被导入到所有新配置文件中,就像/etc/skel
在 Unix 系统上一样。这必然是一个愚蠢的过程,因此,如果没有编码到默认用户中的登录时运行的脚本,启动自定义脚本作为配置文件复制的一部分实际上是不可行的。