代码之家  ›  专栏  ›  技术社区  ›  sheamus

MVC自定义授权属性

  •  1
  • sheamus  · 技术社区  · 13 年前

    我们在这里的网络应用程序上使用Windows身份验证。

    我扩展了MVC AuthorizeAttribute ,以便从web.config文件中读取授权用户和角色。我超控 AuthorizeCore() 以确保当前用户是来自配置文件的用户。

    我和我的同事在这里有点争论。他认为,如果恶意个人获得了对服务器的访问权限,那么他很容易将自己添加到web.config中,他认为应该使用硬编码的用户和角色的标准访问属性,因此某人必须重新编译才能授予自己访问权限。。。或者有一个十六进制编辑器。

    很好奇我在web.config中放置授权角色的方法是否被认为是糟糕的做法?SO团体的集体意见是什么。

    1 回复  |  直到 13 年前
        1
  •  2
  •   Nick Albrecht    13 年前

    在web.config中存储敏感信息通常被认为是一种合理的做法。该文件不是由IIS提供的,通常情况下,如果有人出于恶意破坏了您的网站,以至于他们可以读取您的web.config,那么您通常会面临比仅操作该文件更大的安全问题。如果您仍然担心能够读取web.config,那么您可以始终对其内容进行加密。我个人并没有这样做,但我的理解是,这很容易做到。