问题标签 [password-less]
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.
firebase - 在颤振上使用firebase进行电话身份验证不起作用
这是我的注册页面的代码
我的 build.gradle
我已经在我的 Firebase 项目中添加了一个 SHA 指纹,当我单击触发该功能的按钮时,我使用一个字符串来指定它是否实际被触发,尽管字符串显示“代码已发送”,但没有实际代码被发送到我的手机。再说一次,我真的很缺乏经验,我真的很感谢你的帮助。
ios - 如何在 iOS 上测试 Firebase 无密码登录?
我在我的 Android 应用程序上使用 Firebase 无密码登录没有问题,但我找不到在 iOS 上测试它的方法,因为电子邮件链接总是重定向到 App Store,这是万一找不到的逃生路线安装的应用程序。
在 Android 上,系统将调试/测试版本识别为要打开的应用程序,并且一切正常。但在 iOS 上,似乎 Testflight 版本没有被识别为同一个应用程序,因此逃到了 App Store。是的,我使用的是相同的应用标识符,否则编译不会出现在 Testflight 上。
在不使用 Testflight 方法的情况下调试连接到计算机时出现同样的问题。
我知道 Firebase 现在有 Apple 登录(测试版)选项,但我正在使用颤振,而且目前情况不太好,所以无密码登录是最好的方法。
authentication - 使用 Keycloak 的本地移动应用程序的无密码 SMS 身份验证
我的用例如下:
- 我有一个由 Keycloak 保护的 API
- 我想构建一个将使用此 API 的本机移动应用程序
- 我不想使用用户名/密码来注册和验证移动应用用户
- 我想使用无密码短信认证
我想知道这是否可以使用 Keycloak 来完成,类似于auth0 passwordless api提供的东西。
本页简要总结了我所说的无密码 SMS 身份验证的含义。
authentication - 无密码网站认证/登录
许多网站都有无密码验证系统,即您只需使用电子邮件即可注册/登录/注销,并且不需要密码。
如何实施这样的系统?(框架和语言无关)
注意:我已经阅读:
Web 应用程序中的无密码身份验证 - 它有多安全? 和其他一些 security.SE 帖子
并搜索了关于如何实际实现[password-less]登录系统的 SO 帖子,但没有多大成功;我还没有找到关于实现无密码身份验证的规范问题
手动登录没有密码的用户是有关联的,但不是一回事:这个想法是在成功创建帐户后立即登录,但不一定是 100% 无密码的身份验证系统。
authentication - Yubico / Attestation 和 Assertion 之间的凭证 ID 长度不匹配
我正在使用 AAGUID 为 ff8a011f3-8c0a-4d15-8006-17111f9edc7d(Yubico v5.1 的安全密钥)的 Yubico 安全密钥为我的 Web 应用程序执行无密码身份验证。当我创建/注册新凭据时,我在创建凭据选项的authenticatorSelection部分中使用属性“ requireResidentKey = true ” :
返回的Attestation 数据包含 16 个字节的凭证 id:
所以例如我会收到一个 16 字节的 base64url id,看起来像:AUpf0KmNJrRluGG-65D54Q
然后我使用这个 16 字节的 id 作为密钥来保存生成的凭证。当我使用 Yubico 密钥登录时,返回的断言数据包含相同的 16 字节凭据 ID:
然后我可以使用这个凭证 ID 来检索我存储的凭证数据并验证断言。所以到目前为止一切都很好......
然后我正在阅读 W3C Editor's Draft on Web Authentication: An API for access Public Key Credentials Level 2并注意到“ requireResidentKey ”已被弃用,取而代之的是采用枚举值的“ residentKey ”属性:
requireResidentKey,布尔类型,默认为 false 注意:保留此成员是为了向后兼容 WebAuthn 级别 1,但不推荐使用 residentKey。如果调用者提供了 residentKey 并且客户端理解了后者,则忽略 requireResidentKey。否则,使用 requireResidentKey 的值。请注意,requireResidentKey 的值默认为 false。
如果在没有 residentKey 的情况下使用,它描述了依赖方对居民凭证的要求。如果 requireResidentKey 设置为 true,则验证者在创建公钥凭证时必须创建客户端驻留的公钥凭证源。
residentKey,类型为 ResidentKeyRequirement 注意:此成员取代 requireResidentKey。如果两者都存在并且客户端理解 residentKey,则使用 residentKey 而忽略 requireResidentKey。
有关 residentKey 的值和语义的描述,请参见 ResidentKeyRequirement。
所以我将requireResidentKey更改为residentKey,其枚举值为“ required ”,如图所示:
现在,当我创建一个新凭证时,我会返回一个64 字节的凭证 ID。这本来很好,只是当我使用 Yubico 安全密钥登录时,我得到一个16 字节的凭据 ID,它显然与我在创建凭据阶段保存的 64 字节不匹配。
有趣的是,当我尝试同时使用requireResidentKey = true和residentKey = 'required'时,我得到了为 Attestation 和 Assertion 返回的 16 字节凭据 ID。
这可能是不支持新的residentKey属性吗?如果是这样,为什么我会得到一个 64 字节的凭证 ID?这可能是非居民凭证 ID 的长度吗?
我的代码正在使用旧的requireResidentKey属性恢复工作,但我很想知道这里发生了什么,以及新的 Yubikeys 是否支持residentKey属性?
angular - 如何避免 firebaseUI 电子邮件链接身份验证打开第二个浏览器选项卡?
当使用带有 firebaseUI 的电子邮件链接身份验证方法时,通过电子邮件发送的超链接会打开一个新的浏览器选项卡,以确认/验证对 firebase 的电子邮件接收,然后重定向到初始 URL。这为用户留下了两个具有相同(经过身份验证的)原始 URL 的浏览器选项卡。
有没有办法只打开一个浏览器选项卡?
我尝试使用返回的 emailLinkSignIn 函数配置 firebaseUI EmailAuthProvider:
- { url: '';},这没有效果。
- {url: '[another url]';},这会打开“另一个 url”,但不会在原始浏览器选项卡中对用户进行身份验证。
flutter - Flutter Firebase 无密码登录和深层链接在 iOS 上无法可靠运行
我在 Flutter 上开发了一个已发布的应用程序,带有 Firebase Deep 链接,仅适用于 iOS 的无密码登录。在 Android 上,我使用 Google 登录,它工作正常。
但是在 iOS 上,它可以在模拟器和大多数设备上运行(因为我每天都会看到新帐户),但是我收到了一些无法完成登录过程的人的抱怨。电子邮件链接会在浏览器上打开一个中间页面(这是一种带有继续按钮的确认屏幕),有时会重定向到 App Store,有时会重定向到应用程序,但应用程序上没有任何反应,也没有错误显示在安慰。
在模拟器上,电子邮件链接直接重定向到应用程序并顺利完成登录。
此问题已在各种设备型号上发生。有时,即使是曾经可以登录的人,在卸载应用程序并重新安装后也无法再登录。
我无法在我的设备或模拟器上重现它。
那么什么样的配置可能会导致这种奇怪的行为呢?
我在颤振主频道并使用这些插件版本:
ansible - 如何在 Ansible 中使用无密码用户
我们有一台使用无密码用户来运行一些东西的机器。我们的应用用户被配置为在该机器上支持 sudo,因此我可以运行“sudo su -”并成为该用户,而无需指定密码。(这是在 sudores 文件中配置的)
问题是如何使用我们的应用用户配置运行 playbook 的 ansible,它需要成为无密码用户。
我尝试像这样配置它-成为:是的 become_method:sudo become_user:但我得到-“sudo:需要密码”
如果我将方法切换到“su”,我会得到-“”超时(12s)等待权限提升提示:“
任何想法?我知道 become_flags 可能会有所帮助,但没有看到太多关于它的文档
ssh - ssh 到另一台主机并运行命令
我已经能够成功地设置从主机 A 到主机 B 的无密码 ssh。现在我想要一个在主机 A 上运行的脚本,该脚本转到 B,然后读取文件或只是在主机 B 上执行某些操作并返回到 A. 在主机 A 上:
但我只是看到这个脚本只是让我登陆 hostB 并且没有按照我的预期执行回显。
有人可以建议在这种情况下该怎么做吗?我已经阅读了一些关于使用 sshpass 的建议。但由于这些是生产主机,我需要经过大量的书面记录才能在主机上安装任何东西,而且修复这个问题的最后期限迫在眉睫。
hyperlink - 为什么建议为魔术链接 JWT 令牌提供比通过 HTTP 传递的令牌更短的 TTL,为什么是一次性的?
我正在寻找一个从不使用密码并想了解风险的应用程序。
Magic Link 指南经常建议给 JWT 令牌一个短 TTL 并实现一次性使用。
被泄露的电子邮件帐户似乎是一个静音点,因为可以使用密码提醒来检索密码。我们已经依赖电子邮件帐户。此外,与大多数自建应用程序相比,电子邮件的安全性(例如设备识别)要好得多。
如果您使用 HTTPS,将 JWT 令牌作为查询字符串参数传递是没有风险的,我会这样做。
强制一次性使用意味着维护服务器端令牌数据库——使用 JWT 的原因之一是不必这样做。
采用无密码意味着人们每次想要登录时都必须通过电子邮件往返,这不是很好的用户体验,但可以接受吗?
一旦他们获得访问权限,所有未来的身份验证都会像往常一样通过 JWT 进行管理。
我错过了什么吗?