Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将单点登录与SiteMinder和待开发的java/.Net定制解决方案集成的方法有哪些?_Java_.net_Single Sign On_Siteminder - Fatal编程技术网

将单点登录与SiteMinder和待开发的java/.Net定制解决方案集成的方法有哪些?

将单点登录与SiteMinder和待开发的java/.Net定制解决方案集成的方法有哪些?,java,.net,single-sign-on,siteminder,Java,.net,Single Sign On,Siteminder,我正在考虑使用java或.NET构建一个定制的解决方案,并希望将身份验证层与SiteMinder集成 A.从我目前发现的情况来看,SiteMinder似乎为外部应用程序提供了某种API,用于将登录凭据传递给SiteMinder,并且SiteMinder能够还原登录凭据是否正确: - - =>根据您的经验,在实施此功能时是否存在任何问题 B.身份验证后,我设想SiteMinder会将登录用户ID传递给我的待开发应用程序,该应用程序将搜索数据库以找出与登录用户ID相关的角色和功能。这意味着我需要一个

我正在考虑使用java或.NET构建一个定制的解决方案,并希望将身份验证层与SiteMinder集成

A.从我目前发现的情况来看,SiteMinder似乎为外部应用程序提供了某种API,用于将登录凭据传递给SiteMinder,并且SiteMinder能够还原登录凭据是否正确:

-

-

=>根据您的经验,在实施此功能时是否存在任何问题

B.身份验证后,我设想SiteMinder会将登录用户ID传递给我的待开发应用程序,该应用程序将搜索数据库以找出与登录用户ID相关的角色和功能。这意味着我需要一个数据库表来存储SiteMinder的用户ID列表


=>有没有办法将用户名和名称从siteminder导出到平面文件中?我正在考虑设置一个常规数据接口作业,从siteminder提取用户信息,并更新我的待开发应用程序。

a.API创建siteminder会话,但您需要用户输入凭据


B.SiteMinder不使用自己的用户存储库。它外包给可选的LDAP或数据库服务器。因此,您无需通过SiteMinder即可处理该组件。如果您没有义务,我强烈建议您不要使用SDK。您的代码将与Siteminder绑定,并且可能会在每次升级Siteminder基础设施时中断。SDK在没有其他解决方案时使用。
集成Siteminder的更标准的方法是在Web/应用服务器上安装Web代理/J2EE代理。Siteminder将负责用户的身份验证过程,所以您不必担心密码和向Siteminder传递凭据。此身份验证过程对应用程序完全透明。
一旦用户通过Siteminder的身份验证,web代理将向请求中添加特定的HTTP头,其中包含用户信息(用户名、电子邮件地址、应用程序角色、其他信息……。
应用程序只需在传入的HTTP请求中获取并信任这些信息

B.实现这一目标有两种方法:

  • Siteminder可以在标题中添加这些信息,因此您没有 来处理它们
  • 如果您真的需要数据库中的这些信息,Barra已经为您提供了最重要的信息 信息

  • 如果您不想安装Web代理或担心使用HTTP头的安全性问题,您可能需要研究使用SAML。SiteMinder支持基于SAML的用户身份验证,这可能是一个更容易实现的解决方案

    SAML是一个标准的SSO协议,您应该能够找到许多示例,甚至可以找到一个现成的模块