LightSwitch 2013未经授权的HTML身份验证

时间:2013-11-26 15:02:48

标签: visual-studio-lightswitch

我正在尝试做一些我认为应该非常简单的事情,但LightSwitch 2013 HTML正在使它看起来非常难。

我想要一个需要Windows身份验证的LightSwitch HTML客户端和Web服务。任何用户都没问题。我不想做任何授权,除了“是的,他们经过身份验证。”

当我在LightSwitch属性中启用Windows身份验证时,即使对于“任何用户”,也是如此:

Authentication settings

似乎LightSwitch仍然希望进行授权,因此它需要设置_IntrinsicData连接字符串并指向有效的ASP.NET成员资格数据库。我尝试过以下操作:

  1. 在LightSwitch中将身份验证设置为none,只让IIS执行此操作 - 这会导致重复提示,最终导致客户端中的401。
  2. 将角色提供程序配置更改为使用Windows而不是像通常在ASP.NET中那样使用SQL - 这会导致客户端重复使用相同的401。
  3. http://msdn.microsoft.com/en-us/library/vstudio/ff851957.aspx中描述的各种级别的基于代码的权限 - 这会导致重复401或根本无法执行任何操作,具体取决于我设置的位置。
  4. web.config完全删除或禁用角色提供程序 - 这会导致LightSwitch在下次创建/更新时抱怨角色管理器已被禁用。
  5. 使用deny中的allowweb.config条目进行混淆,并在将应用属性设置为匿名时将身份验证设置为Windows;这导致401。
  6. 如果我离开显示的设置并且不做任何特殊操作,那么当提交创建/更新操作时,LightSwitch会尝试与不存在的成员资格数据库通信并最终超时。

    如何使用全面授权进行身份验证而无需携带会员资格数据库?

1 个答案:

答案 0 :(得分:1)

即使您指定允许任何Windows用户,LightSwitch仍然希望拥有成员资格数据库表。这是因为应用程序仍然有管理员用户,并且需要表格来存储管理员信息。管理员可以添加特定用户或组,并将其分配给可以让他们访问其他经过身份验证的用户不具备的应用程序部分的角色。换句话说,任何Windows用户都可以使用该应用程序,但其中一些用户可能拥有比其他用户更多的权限,并且会员数据库是为此目的所必需的。