文档章节

Windows自定义登录认证开发-C#

沉默狮
 沉默狮
发布于 2017/01/18 13:27
字数 346
阅读 47
收藏 0
点赞 0
评论 0

在官网找到个C++ Demo,通过查看源码得知需要自己编写一个 credential provider的C++类,继承于ICredentialProvider (credentialprovider.h) 这个接口。

stack overflow上有个哥们儿这么说道:

The new CredentialProvider model in Windows Vista and higher is based on COM. This means that it should be possible as long as you implement the correct COM interfaces.

Based on this, it should be easier to build than the older GINA model since the older GINA module used DLL entry points and function pointers instead of COM interfaces.

Given the ability for .Net to inter-operate with COM, it should be as easy as:

  1. Building a C# definition of the ICredentialProvider interface and adding the correct COM attributes with the correct GUIDS
  1. Building a credential provider class that implements the ICredenitalProvider and is marked as COMVisible(True)
  1. Registering the new assembly with Regasm
  1. Adding the correct registry keys to register your new CredentialProvider with Windows (Software\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers)

If you do all of that, you will have a working credential provider, written in C#

他的意思大概就是Vista以后的ICredentialProvider接口都是基础COM来实现的,C#处理起来COM很容易,直接在C#里面声明这个接口再实现它吧,你将会很简单的完成这个东东。

然而有更多的人直接推荐了pgina 这个三方库,它主要是就是做自定义的windows凭据校验。如果你不需要太多的验证,高度的自定义,你可以写一个它的插件(托管代码)来实现你自己的东东。

© 著作权归作者所有

共有 人打赏支持
沉默狮

沉默狮

粉丝 10
博文 53
码字总数 24758
作品 0
成都
程序员
Nearforums 8.0 发布,轻量级论坛软件

Nearforums 8.0 发布,该版本增加对国际化的支持,提供一个自定义的数据库认证模块,增加了论坛和帖子的访问控制。 Nearforums 是一个轻量级的论坛软件,支持 Windows 和 Linux 系统,支持 ...

红薯 ⋅ 2012/03/22 ⋅ 0

[WCF安全系列]认证与凭证:用户名/密码认证与Windows认证

如果要给认证下一个定义,我个人的倾向这样的定义:认证是确定被认证方的真实身份和他或她申明(Claim)的身份是否相符的行为。认证方需要被认证方提供相应的身份证明材料,以鉴定本身的身份...

长平狐 ⋅ 2012/09/04 ⋅ 0

​.net REST/HTTP 工具库--RestSharp

RestSharp 进行 rest/http 请求的 .NET 工具库。 功能 支持.NET 3.5+,Silverlight 5,Windows Phone 8,Mono,MonoTouch,Mono for Android 容易安装,NuGet 适合大多数 .NET 风格 支持使用...

匿名 ⋅ 2016/12/16 ⋅ 1

Facebook 的 Windows SDK--winsdkfb

winsdkfb 是为 Facebook 准备的 Windows SDK,允许开发者集成 Facebook 到 Windows 应用。 支持功能: 认证 登录 退出 登录按钮 资料图片控制 对话框 反馈对话框 请求对话框 图像 自定义存储...

叶秀兰 ⋅ 2015/07/16 ⋅ 1

使用Spring Security开发基于表单的认证(二)

使用Spring Security开发基于表单的认证(二) 个性化用户认证流程 一、自定义登录页面 ①加页面:定义该页面hcx-signIn.html为登录页面: ②配授权 hcx-signIn.html: 注意,如果忘记配授权...

JS_HCX ⋅ 04/30 ⋅ 0

Windows 8底层功能及开发平台

http://www.cnbeta.com/articles/154957.htm Windows 8基于Windows 7,同时微软对其进行了性能、安全、隐私、系统可靠性等方面的改进。在硬件需求方面,Windows 8与Windows 7完全一样。之前也...

kajhsdjkah ⋅ 2011/09/14 ⋅ 2

C#开发微信门户及应用(16)-微信企业号的配置和使用

在本系列随笔的前面,主要就是介绍微信公众号的门户应用开发,最近把整个微信框架进行了扩展补充,增加了最新的企业号的API封装和开发,后续主要介绍如何利用C#进行微信企业号的开发工作,本...

walb呀 ⋅ 2017/12/04 ⋅ 0

UserLock如何保证高校内部信息安全

俄克拉荷马城市公立学校的IT团队负责该片区接近43000个学生的网络管理工作。长期以来,学生和教师员工共享Windows网络登录为他们带来了很多难题。 由于没有并发登录的限制,也不能对网络使用...

缘分已尽奈何缘浅 ⋅ 2013/10/23 ⋅ 0

用Python建设企业认证和权限控制平台

目前大家对Python的了解更多来源是数据分析、Ai,再就是运维工具开发,本文主要是利用Python进行web开发,web开发使用Python进行开发同样也是非常受欢迎的,例如:FaceBook,豆瓣,知乎,饿了...

布道 ⋅ 2017/12/20 ⋅ 0

Ftp.NET

Ftp Dot Net是一个用C#开发的FTP服务器软件,支持Windows 2000/XP/2003操作系统,支持活动目录、NTFS认证,独立FTP根目录和虚拟路径。

匿名 ⋅ 2008/09/12 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sbt网络问题解决方案

http://dblab.xmu.edu.cn/blog/maven-network-problem/

狐狸老侠 ⋅ 5分钟前 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 48分钟前 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 53分钟前 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

Spring 依赖注入(DI)

1、Setter方法注入: 通过设置方法注入依赖。这种方法既简单又常用。 类中定义set()方法: public class HelloWorldOutput{ HelloWorld helloWorld; public void setHelloWorld...

霍淇滨 ⋅ 昨天 ⋅ 0

马氏距离与欧氏距离

马氏距离 马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为Σ的随机变量之间的差异程度。 如果协方差矩阵为单位矩阵,那么马氏距离就简化为欧氏距离,如果协方差矩阵为对角阵,则其也...

漫步当下 ⋅ 昨天 ⋅ 0

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 昨天 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部