返回首页
当前位置: > 计算机类 > 计算机网络 >

一种基于智能卡登录Windows系统的实现方式(2)

时间:2011-08-15 13:37来源:网络(转载) 作者:梁皓 点击:
{ SFI_USERNAME, CPFT_LARGE_TEXT, LUsername }, { SFI_STATUS, CPFT_SMALL_TEXT, LStates }, { SFI_PIN, CPFT_PASSWORD_TEXT, LPin }, { SFI_TIP_TEXT, CPFT_SMALL_TEXT, LTip }, { SFI_SUBMIT_BUTTON, CPFT_SUBMI
  
  { SFI_USERNAME, CPFT_LARGE_TEXT, L"Username" },
  { SFI_STATUS, CPFT_SMALL_TEXT, L"States" },
  { SFI_PIN, CPFT_PASSWORD_TEXT, L"Pin" },
  { SFI_TIP_TEXT, CPFT_SMALL_TEXT, L"Tip" },
  { SFI_SUBMIT_BUTTON, CPFT_SUBMIT_BUTTON, L"Submit" },
  };
  用户在登录时选中智能卡标题图片时,即可调用智能卡登录对应的Windows Credential Provider接口函数,并调用ICredentialProviderCredential:: SetSelected函数,在SetSelected函数中判断智能卡是否已经插入,若插入则允许切换到输入PIN码框界面。
  if(CheckKeyIsInsert() == true)
  {SetConnect();
  }
  用户在PIN码输入框完成PIN码键入后,智能卡Windows Credential Provider调用ICredentialProviderCredential:: GetSerialization函数。在GetSerialization函数中调用智能卡API校验SFI_PIN对应控件的PIN码是否正确,若检验失败,设置SFI_TIP_TEXT对应的提示文字为PIN码校验结果提示信息。若校验成功,则读取和解密文件系统中加密保存的用户登录信息,并返回到GetSerialization函数的输出参数中。返回的用户登录信息将被Windows登录应用程序验证,若结果匹配则结束登录界面现在Windows桌面,否则提示错误信息。
  完成Windows Credential Provider后,需将Windows Credential Provider库拷贝到系统盘System32目录,并通过注册表注册到Windows系统。
  [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\Credential Providers\{ed756d7f-139d-403f-aea8-82e97a83d184}]
  @="SMARTCARD_CredentialProvider"
  [HKEY_CLASSES_ROOT\CLSID\{ad7a7d7f-139d-403f-aea8-82e97a83d184}]
  @=" SMARTCARD _CredentialProvider"
  [HKEY_CLASSES_ROOT\CLSID\{ad7a7d7f-139d-403f-aea8-82e97a83d184}\InprocServer32]
  @=" SMARTCARD _CredentialProvider.dll"
  "ThreadingModel"="Apartment"
  3 结束语
  至此,我们介绍了一种通过智能卡登录Windows操作系统的方式,并简单介绍了Windows Credential Provider的关键函数。通过上述方法,还得到了一种将用户名密码登录方式转换为另一种登录方式的思路(如指纹登录、证书登录等)。为定制更安全、更方便、更友好的Windows登录程序打下了基础。
  参考文献:
  [1] Windows Vista Sample Credential Providers Overview.doc[EB].
  [2] Credential Providers for PDC - Final.doc[EB].
  [3] 陈锐,蒋泽军,陈福,等.基于Credential Provider的身份认证模型的研究与实现[J].航空计算技术,2010(3):1-4.

(责任编辑:南粤论文中心)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐内容