hapi.js Auth Scheme 和 Strategy 有什么区别?

In hapi.js what is the difference between an Auth Scheme and Strategy?

hapi.js 文档不特别是完整)初学者友好1 ...

Server Auth Scheme and Strategy 之间的区别 是什么?

我们需要两个吗?

1如果有人可以解释我们将在文档中 PR 的差异。

还发布于:https://github.com/hapijs/discuss/issues/163

是的,两者都需要。它们完全是不同的东西。此处对其进行了解释:http://hapijs.com/tutorials/auth。但让我以不同的方式重申一下:

计划

方案是一种通用的身份验证类型。基本身份验证和摘要式身份验证是不同类型的身份验证,在 hapi 中,每种身份验证都是不同的方案。您可以将方案视为身份验证模板。方案不直接用于对用户进行身份验证,而是根据方案创建特定策略。

策略

策略是具有指定名称的方案的配置实例。存在策略,因此您可以多次使用相同的方案,但方式略有不同。例如,您可能决定要在您的应用程序中使用基本身份验证。对于某些路由,您可能希望根据数据库中的值验证用户的密码,而对于某些其他路由,您可能希望根据存储在文本文件中的值检查密码。在这种情况下,您可以根据方案创建 2 种不同的策略。策略关系的方案如下图所示:

大多数应用程序将根据已作为插件发布的预先存在的方案创建新策略(即 hapi-auth-basic)。