允许在MVC 4中外部登录OAuth / OpenID的安全隐患

时间:2012-12-12 04:56:04

标签: oauth asp.net-mvc-4 openid security

我正在考虑允许用户在我的MVC 4应用程序中通过OAuth / OpenID提供程序等使用外部登录是否有意义。

允许外部登录是否使您的应用程序比标准FormsAuthentication或其他更安全或更不安全?安全性至关重要,因为某些账户会有现金价值(用户可以将钱存入账户)。

我特别关注安全隐患,但我也想知道我需要考虑的任何其他注意事项。

1 个答案:

答案 0 :(得分:2)

根据我的专业经验,因子安全性不仅与所使用的编程语言/技术相关。在你的情况下(MVC 4和微软“世界”)已经为你提供了一些选择。但最终“防弹效果”由“应用程序架构”和开发人员/程序员完成。

您提到的身份验证提供程序具有许多优点,但同时提供“灰色知识区域”和“控制”。 “链条只有它最薄弱的环节一样强大”,这意味着你的代码有多好并不重要,最后如果你将代码的一个非常重要的部分委托给某个“其他实体”(你甚至不知道他们的代码/数据库/破解的容易程度有多好,你不能对它做任何事情)。

我在这里对OAuth / OpenID /其他人说不好或不好,我只是简单地告诉你,最后你应该提出的问题是:“你在网站上存储的信息有多安全?”

如果是银行网站,请查看需要在此字段中“工作”的硬件和安全协议以及ENTITIES。 Visa /万事达卡/其他网络提供商不仅仅是一个简单的“2人地下室公司”。此外还有保险公司和大合同试图为双方提供安全保障。

因此,在您的情况下,只有您可以决定您在网站中存储的内容,但您应该做的其他问题是:您在哪里存储所有这些信息?共享主机/一些主办公司在您的实际范围之外?备份怎么样?等...

如果你在谈论真钱,有许多方面需要考虑,只有你可以衡量你可以做的事情/负担,并希望决定最好的,并且从来没有发生过一些坏事:)

祝你好运:)