问题标签 [localauthentication]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
45 浏览

swift - iOS CocoaTouch - LocalAuthentication 框架:_ErrorType 定义的代码枚举在 LAError 中的意义和用途

我试图了解为 iOS SDK 提供的 LocalAuthentication 框架在 LAError 类中声明的代码枚举标记的类型别名的用法和意义。我在随附的屏幕截图中标记了相同的内容。

在 LAErro.Code 枚举中声明的 _ErrorType 的意义和用途是什么?

参考图像

任何有助于我理解的线索将不胜感激。

图像的相应代码片段:

0 投票
2 回答
132 浏览

ios - 我如何观察用户何时使用生物识别技术对应用程序进行身份验证?

简单地在代码中我像这样使用它:

然后用户可以看到:

在此处输入图像描述

一切都很好,直到用户点击Cancel。然后我显示标签:

"Please use biometrics to authenticate". 现在,在取消第一次尝试后,我需要随时在用户通过身份验证后获得回调。我怎样才能检测到这个?

0 投票
0 回答
140 浏览

ios - 多个用户在同一设置会话中注册的 iOS FaceID/TouchID 问题

尝试注册 FaceID 时,有两个步骤可以扫描用户的面部。在第一步,人 A 注册他的脸,在第二次扫描中,人 B 注册他的脸。两种注册都被接受,并且身份验证仅适用于首先注册的人 A。

重现步骤:

转到 FaceID 设置并注册 Face ID..

与 A 完成第一次扫描。

与 B 完成第二次扫描。

预期成绩:

与 B 的第二次扫描应该失败。

实际结果:

与 B 人的第二次扫描成功。身份验证仅适用于 A 而不是 B

版本/构建:

iOS 12.0

配置:

iPhone X

知道为什么 iOS 允许在一次扫描中设置多个用户的 FaceID 吗?我知道可供两个人使用的替代外观,但我试图在没有替代外观的情况下做到这一点。

Touch ID 部分:

尝试注册 TouchID 时,用户需要多次扫描指纹,在此过程中,如果两个用户交替提供指纹,则两个用户都可以成功验证。

重现步骤:

前往 Touch ID 设置并注册 Touch ID。

以 A 人和 B 人的身份交替点击传感器。使用角色 A 进行身份验证并使用人员 B 进行身份验证

预期成绩:

只有一个人可以访问。

实际结果:

A 人和 B 人都可以访问。身份验证仅适用于 A 而不是 B

版本/构建:

iOS 12.0

配置:

iPad Pro

知道为什么 iOS 允许在一次扫描中设置多个用户的 FaceID 吗?我知道可供两个人使用的替代外观,但我试图在没有替代外观的情况下做到这一点。

0 投票
1 回答
866 浏览

ios - 如何使用 touchIDAuthenticationAllowableReuseDuration

当应用程序启动或何时进入前台时,我正在通过 LAContext 对用户进行身份验证。如果设备被锁定,则用户将被要求两次授权。为了避免这种行为,我将 context.touchIDAuthenticationAllowableReuseDuration 值设置为 240,但它没有按预期工作。用户仍然需要授权自己两次。我做错了什么?


0 投票
1 回答
1311 浏览

android - 为 local_auth Flutter 添加自定义对话框

我只是在颤动上弄乱包local_auth 。该软件包在 android 和 iOS 上都可以正常工作,但我找不到在 local_auth 软件包中添加自定义对话框选项的任何选项。有谁有想法吗?任何帮助将不胜感激。

0 投票
1 回答
2082 浏览

ios - FaceID 应该回退到密码,但不会

我继承了具有以下类的代码库,为 Face/Touch ID 提供支持。

预期的行为是在面部/触摸 ID 成功时用户已登录。这有效。

但是,如果用户未能通过 Face ID 并选择输入他们的密码,一旦调用完成处理程序,他们就会退出。我相信选择使用密码会触发

如何改为触发密码提示?LAPolicy.deviceOwnerAuthentication我应该使用并评估它来创建第二个策略吗?

我应该指出,在模拟器上这似乎按预期工作,但在设备上却没有,我退出了。

0 投票
3 回答
494 浏览

ios - 从哪里调用 Touch ID 逻辑?

我是iOS的新手。我正在应用程序中尝试本地身份验证框架。我的应用程序流程就像当用户打开应用程序时,他可以看到启动屏幕,然后如果他是新用户,他将重定向到登录屏幕,然后重定向到仪表板屏幕。从登录开始,如果他点击记住我,下次当用户打开应用程序时,他将直接重定向到仪表板。

我只是不明白我在哪个屏幕上添加了 authenticationWithTouchID 逻辑。在应用程序打开时,我想显示 TouchID 弹出窗口,以便用户可以进行身份​​验证并重定向到仪表板。

更新:1

我正在检查记住我是不是真的didFinishLaunchingWithOptions()AppDelegate因此,我曾经打开特定的UIViewController. 因此,在相同的方法中,我只检查用户是否启用了触摸 ID,如果用户对触摸 ID 进行身份验证,那么我将显示弹出窗口,否则将正常重定向到仪表板。这是一个正确的方法吗?我想问的另一件事是,当暂停应用程序单击主页按钮时,如果我想在应用程序重新打开时再次显示触摸 ID,则调用该身份验证方法。会去applicationWillEnterForeground()吗?

更新:2

当 Touch ID 打开时,仪表板内容在后台可见applicationWillEnterForeground()

0 投票
1 回答
628 浏览

ios - 本地身份验证问题

我有一个应用程序,用户可以使用TouchID/ FaceID(如果可用,注册并启用)或密码进行身份验证。所有这些选项都可以在应用程序的设置中设置并存储在UserDefaults. 应用程序加载后,它会检查这些Bool键是否具有真正的价值UserDefaults并采取相应的行动。

当用户拥有带有 TouchID/FaceID 的设备但他们尚未启用和注册它时,我的问题就出现了。在这种情况下,应用程序应仅显示密码屏幕。但相反,TouchID当我禁用该选项(出于测试目的)时,我在我的 iPhone 上呈现。根据Apple的文档,它说:

如果 Touch ID 或 Face ID 可用、已注册且未禁用,则首先会要求用户提供该信息。否则,将要求他们输入设备密码。

在模拟器上,我看到密码屏幕,但在我的 iPhone 上,当它被禁用并返回该键时,我看到TouchID弹出窗口。为什么会这样?我究竟做错了什么?UserDefaultsfalse

0 投票
0 回答
321 浏览

oauth-2.0 - 本地身份验证以及 oauth2

我正在尝试实施替代策略来加入和验证不想使用社交登录并希望使用基于用户名和密码的身份验证的用户。

我的身份验证服务器是用带有passport.js 和expressjs 的node.js 编写的。如果使用 openid connect 认证成功,它会返回一个 JWT 令牌。

我的问题是在这种设置中本地身份验证如何与外部身份验证一起使用?

我想过使用资源所有者密码凭据进行本地身份验证,并使用此流程使 Web 应用程序将凭据传递到身份验证服务器。

这种 ROPC 本地身份验证的优点是授权服务器可以同时支持本地身份验证和使用 oauth 的社交登录。

这是一个好的做法还是应该本地身份验证只是非openid连接简单的解决方案?

0 投票
1 回答
507 浏览

ios - 用户取消了 touchID 实现错误

如何解决 TouchId 错误:Domain=com.apple.LocalAuthentication Code=-2 "Canceled by user."

我尝试再次添加本地上下文: