通过与本地AD集成为在AWS上的应用启用SSO

时间:2019-03-14 03:08:10

标签: amazon-web-services active-directory single-sign-on kerberos adfs

对于部署在AWS上的报告应用程序,需要启用SSO以便用户访问它-

  1. 用户只能从公司网络内的办公室PC访问应用程序。
  2. 应用程序端点受API网关的保护,仅允许从公司内部网络进行访问。
  3. 用户单击报告应用程序的URL后,该应用程序应使用企业AD验证登录用户,以确保登录用户是有效用户,并且他们属于允许的正确AD组。访问该应用程序。
  4. 如果通过了身份验证和授权检查,则应用程序应允许访问用户,否则提示登录页面以手动输入凭据。

您能否建议设置此方法的最佳方法是什么?我们已经在公司基础结构上部署了ADFS(不确定版本),所以想知道我们是否可以使用它,或者依靠Windows Kerberos身份验证来获取令牌以允许用户访问。 什么是更好的方法,或更重要的是设置起来更快。一般来说,这对SSO和ADFS来说是全新的,所以感谢您的答复。

谢谢! 劳纳克

1 个答案:

答案 0 :(得分:0)

我建议您使用ADFS,因为与Kerberos相比,将Web应用程序与ADFS集成起来要容易得多。

Kerberos可能很棘手。我看到您提到报告应用程序将仅可用于公司的内部网络,但是您可能仍会遇到Kerberos的麻烦,因为它需要在最终用户计算机上设置某些浏览器。在Windows上,您必须确保某些IE设置:

  • IE-> Internet选项->安全性->本地Intranet->自定义级别->确保已选择“仅在Intranet区域中自动登录”
  • IE-> Internet选项>高级->确保“启用集成Windows身份验证” 已打开
  • 您很有可能还需要将报告应用程序URL添加到每个用户PC上的Intranet网站和受信任网站的列表中(如果您为应用程序使用自定义域名,即不是本地服务器名称)在您的域中)
  • 除IE之外的其他浏览器可能需要其他设置,您可以阅读more details here

我认为与AD组一起工作也有些复杂,因为您只能从Kerberos令牌获得用户名。然后,您将不得不直接致电AD以查找用户的组。使用ADFS,您可以直接从令牌中获取组(如声明)。

关于如何将您的Web应用程序与ADFS集成,这是一本很好的手册:https://auth0.com/docs/connections/enterprise/adfs