SDB:使用指纹认证

跳转到:导航搜索


本文档介绍了在 openSUSE 上配置和使用指纹读器的相关信息

背景信息

借助 ThinkFinger 驱动程序,openSUSE 支持某些 IBM 和 Lenovo Thinkpad 笔记本电脑中包含的 UPEK/SGS Thomson Microelectronics 指纹读卡器。相同的指纹读卡器也可以在其他笔记本电脑中找到,或者作为独立设备或内置于某些 USB 键盘中。有关更多详细信息,请参阅 Thinkfinger READMEfprint 文档。如果您的系统包含指纹读卡器,您可以使用生物识别认证,以及通过登录和密码进行的标准认证。在注册了指纹后,用户可以通过在指纹读卡器上滑动手指或输入密码来登录系统。

如果硬件检查检测到与您的笔记本电脑集成(或连接到您的系统)的指纹读卡器,则会自动安装软件包 libthinkfingerpam_thinkfinger,或 fprintdfprintd_pam

支持的应用程序和操作

PAM 模块 pam_thinkfinger 支持以下应用程序和操作的指纹用户身份验证(尽管您在所有情况下可能不会被提示滑动手指)

  • 登录 GDM 或登录 shell
  • 解锁 GNOME 桌面上的屏幕
  • 启动 YaST 和 YaST 模块
  • 使用 root 权限启动应用程序:sudognomesu
  • 使用 susu-username 切换到不同的用户身份

使用 Gnome 设置管理指纹

步骤:注册指纹

  • 在 Gnome 设置中,单击详细信息+用户以打开 用户 对话框。将显示系统中用户或组的列表。

  • 选择您要注册指纹的用户,然后单击标有 指纹登录 的按钮。
  • 在新弹出窗口中,选择您要保存的手指,然后单击 下一步

  • 弹出窗口提示用户滑动手指,直到收集到五个可读的指纹。
  • 成功获取指纹后,单击接受以关闭 指纹配置 对话框和用户对话框。
  • 如果您还想使用指纹认证来启动 YaST 或 YaST 模块,您还需要为 root 注册指纹。为此,请转到描述命令行说明的部分,并以 root 用户身份执行它们。

您可以按与之前添加指纹时使用的相同按钮删除 Gnome 中的指纹。

故障排除:无法写入 PAM 设置

要修复此错误,请以超级用户身份登录并执行以下操作

 cd /etc/pam.d
 mv common-auth common-auth-old
 ln -s common-auth-pc common-auth

在 KDE 中管理指纹

从 Plasma 5.24 开始,KDE 提供了一个用于注册指纹的 GUI

步骤:在 KDE 中注册指纹

  • 在 KDE 系统设置中,选择用户。将显示此系统上的用户列表。选择您要注册指纹的帐户。
    选择“配置指纹认证”

  • 选择您要注册的手指并按照说明操作。注意:建议注册双手的手指

为指纹认证准备窗口管理器

注册指纹后,您可以准备系统以使用指纹进行身份验证。为了使用指纹,如果您的系统具有 pam-config,您可能只需要运行

sudo pam-config --update --fprintd

否则,对于 sddm,将以下内容添加到 /etc/pam.d/sddm,紧接在

 #%PAM-1.0
 auth    [success=1 new_authtok_reqd=1 default=ignore]   pam_unix.so try_first_pass likeauth nullok
 auth    sufficient      pam_fprintd.so

为了使用 KDE 的锁屏进行指纹身份验证,请在 /etc/pam.d/kde 中创建文件,并包含以下行

 auth 			sufficient  	pam_unix.so try_first_pass likeauth nullok
 auth 			sufficient  	pam_fprintd.so

在锁屏上按“Enter”后,系统会要求您使用指纹扫描仪解锁屏幕。

如果您发现 /etc/pam.d/{sddm,kde,*} 丢失,请不要惊慌!这些文件已移动到 /usr/lib/pam.d/,您可以并且应该将它们复制到 /etc/pam.d 并进行更改。

使用 fprintd 管理指纹

步骤:注册指纹

  • 打开 shell 并以 root 身份登录。
  • 要为特定用户注册指纹,请输入
 fprintd-enroll

fprintd 提示用户滑动手指,直到收集到三个可读的指纹。

  • 如果您还想使用指纹认证来启动 YaST 或 YaST 模块,在 GNOME 控制中心,您还需要为 root 注册指纹。
  • 让用户滑动手指。fprintd 将指纹与为此用户存储的指纹进行比较,并提供匹配的指纹的消息。

一旦用户的指纹成功注册,用户就可以选择使用指纹或密码来验证上述操作和应用程序。

步骤:验证或删除指纹

  • 打开 shell 并以 root 身份登录。
  • 要验证特定用户的现有指纹,请运行以下命令
 fprintd-verify
  • 让用户滑动手指。fprintd 将指纹与为此用户存储的指纹进行比较,并提供匹配的指纹的消息。
  • 要删除用户的指纹,请运行以下命令
fprintd-delete

步骤:进行测试运行

  • 在 shell 中,运行
 fprintd-enroll
  • 您可以使用以下命令查看已注册的指纹
 fprintd-list
  • 要验证指纹,请运行
 fprintd-verify

更多信息