繁体   English   中英

使用Windows身份验证和用户名/密码安全登录Azure上的网站

[英]Secure login to a website on Azure with Windows authentication and username/password

我想根据以下要求在Azure上建立一个网站,并且想知道是否有可能?

  • 作为内部团队成员,我必须能够使用Windows身份验证登录到该站点。
  • 作为外部客户,我必须能够使用用户名和密码登录该站点
  • 作为外部客户,我一定不能访问该网站的子集
  • 作为未授权用户,我一定不能访问该网站上的任何内容

我想我必须在公司的Azure和Active Directory之间建立VPN连接。 我怎么做?

完全可以满足我的要求吗?

背景资料

我们是一个约有10名团队成员的小型项目。 我们有四个需要访问该站点的大客户,每个客户中都有几个需要访问该站点的人。

客户将只能以只读方式访问静态的非敏感信息。 团队成员将具有写权限,并将处理一些敏感信息。

** 编辑 **

现在,我已经设法创建了我们的项目本地AD与Azure的高效同步,这要感谢user18044。 不幸的是,团队成员的帐户位于公司的AD(corp.mycompany.com)中,而AD对此拥有单向信任。

我们在项目AD中有组,指向我们公司AD中的帐户,但是组中的成员未同步到Azure。

这可以解决吗?

是的,我认为您所描述的是可行的。

您的前两个要点是关于身份验证的。 由于Azure Active Directory不直接支持Windows身份验证,因此可以采用联合身份验证。

当您作为内部团队成员登录时,您会进入称为“家庭领域发现”页面的页面,在其中选择要进行身份验证的领域。选择公司的领域,您将被重定向到STS(例如ADFS),您的公司已设置为对您进行身份验证。 如果您在与STS进行身份验证所在的Windows Active Directory网络中,则应该能够使用Kerberos颁发令牌。

外部客户将被重定向到另一个STS,该STS将对凭据存储使用表单身份验证来颁发安全令牌。

然后,两个安全令牌都被发回到Azure Active Directory,该Active Directory被配置为同时信任两个STS并颁发自己的令牌。 请参阅此处的示例。

至于后两个项目符号,可以根据分配给用户的角色来执行授权部分。 根据对用户进行身份验证的STS,可以为他们分配特定角色。 根据该角色,您可以访问或不访问网站的某些部分。 如何实现此方法取决于您的Web应用程序使用的堆栈,但是Google搜索应该会给您带来一些帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM