自定义身份 2.x 连接到 OWIN 管道 - 多租户 SaaS 应用程序
Custom Identity 2.x Hooking Into OWIN Pipeline - Multi-Tenant SaaS Application
问题:我们可以简单地挂接到 OWIN 管道来设置和检索安全身份验证票证 (cookie) 吗?
我正在寻找为 MVC 5 应用程序推出我们自己的 security/membership 的最佳方法。我对注册、登录、密码更改、双重因素、密码恢复等没有任何问题。我担心的是管道。
项目: 该项目是一个多租户 SaaS 应用程序,需要对身份框架进行许多更改。我们正在探索编写自己的代码,我们过去曾为许多项目这样做过。
我们不使用声明或外部提供商(例如 Google 或 Twitter)进行身份验证,所有帐户都是基于本地数据库角色的帐户。该项目不使用 EF。
我们探索过为身份创建我们自己的商店,但是,当它完全实施时,有太多值得关注的领域,感觉好像用户管理器只是挡路。代码开始膨胀,超出了我们自己发挥作用所需的水平。
密码是安全创建、管理和存储的,与此问题无关。
如果您愿意考虑托管解决方案,我建议您查看 http://aka.ms/aadb2c - 该页面引用的示例将展示如何使用 OWIN 中间件连接到托管身份存储。
我们是 运行 具有可配置的每个角色权限的多租户 SaaS 应用程序。我们利用 Claims 系统在用户登录时将用户权限存储在 cookie 中。这非常有效并且非常高效。
您不必使用实际声明来放置您的权限,但您可以将一些信息存储为用户 cookie 上的声明,用于确定用户权限。
由于您的问题对实际实现有点含糊,我不会提供任何代码示例 - 考虑到您的手动安全系统,我的示例很可能不适用。除非你用你在做什么的具体例子来澄清你的问题。
我们正在使用连接到 OWIN 管道的自定义身份验证机制。我们在 owin 管道中使用我们自己的自定义中间件,因此将启用身份验证
唯一需要完成的过程是您的中间件应验证身份,管道中的 cookie 身份验证中间件将根据已建立的身份设置 cookie。
这将起作用的方式是中间件的排序和在 Owin 身份验证管道中使用 AuthenticationManager
。
我们也在使用 Google、Facebook 等与我们自己的自定义身份验证提供程序中间件共存的社交登录,我们还使用 JWT 中间件进行隐式流身份验证。
长答案简而言之:是
更多详细信息:根据您进一步 post 需要注意的确切细节。
问题:我们可以简单地挂接到 OWIN 管道来设置和检索安全身份验证票证 (cookie) 吗?
我正在寻找为 MVC 5 应用程序推出我们自己的 security/membership 的最佳方法。我对注册、登录、密码更改、双重因素、密码恢复等没有任何问题。我担心的是管道。
项目: 该项目是一个多租户 SaaS 应用程序,需要对身份框架进行许多更改。我们正在探索编写自己的代码,我们过去曾为许多项目这样做过。
我们不使用声明或外部提供商(例如 Google 或 Twitter)进行身份验证,所有帐户都是基于本地数据库角色的帐户。该项目不使用 EF。
我们探索过为身份创建我们自己的商店,但是,当它完全实施时,有太多值得关注的领域,感觉好像用户管理器只是挡路。代码开始膨胀,超出了我们自己发挥作用所需的水平。
密码是安全创建、管理和存储的,与此问题无关。
如果您愿意考虑托管解决方案,我建议您查看 http://aka.ms/aadb2c - 该页面引用的示例将展示如何使用 OWIN 中间件连接到托管身份存储。
我们是 运行 具有可配置的每个角色权限的多租户 SaaS 应用程序。我们利用 Claims 系统在用户登录时将用户权限存储在 cookie 中。这非常有效并且非常高效。
您不必使用实际声明来放置您的权限,但您可以将一些信息存储为用户 cookie 上的声明,用于确定用户权限。
由于您的问题对实际实现有点含糊,我不会提供任何代码示例 - 考虑到您的手动安全系统,我的示例很可能不适用。除非你用你在做什么的具体例子来澄清你的问题。
我们正在使用连接到 OWIN 管道的自定义身份验证机制。我们在 owin 管道中使用我们自己的自定义中间件,因此将启用身份验证
唯一需要完成的过程是您的中间件应验证身份,管道中的 cookie 身份验证中间件将根据已建立的身份设置 cookie。
这将起作用的方式是中间件的排序和在 Owin 身份验证管道中使用 AuthenticationManager
。
我们也在使用 Google、Facebook 等与我们自己的自定义身份验证提供程序中间件共存的社交登录,我们还使用 JWT 中间件进行隐式流身份验证。
长答案简而言之:是
更多详细信息:根据您进一步 post 需要注意的确切细节。