使用OAuth作为协议和OpenAM作为SP的联合

使用OAuth作为协议和OpenAM作为SP的联合,oauth,oauth-2.0,openid,openam,federation,Oauth,Oauth 2.0,Openid,Openam,Federation,我想知道是否可以使用OpenAM建立OpenID连接联盟。我在这个主题中没有找到任何东西,而且在我看来OpenAM只允许SAML、Liberty ID-FF和WS-Federation使用联邦 那么,有没有可能像我们在WSO2中所做的那样,让OpenID连接联邦和OpenAM呢?如果是,怎么做 这是一张说明我需要的图片。您可以看到下面两个公司的架构,其中每个公司都有自己的IdP和一些SP。在红色中,您将看到我想要进行的通信: 公司1的客户尝试访问公司2的SP电源 供应商检查他是否有会话,如果没

我想知道是否可以使用OpenAM建立OpenID连接联盟。我在这个主题中没有找到任何东西,而且在我看来OpenAM只允许SAML、Liberty ID-FF和WS-Federation使用联邦

那么,有没有可能像我们在WSO2中所做的那样,让OpenID连接联邦和OpenAM呢?如果是,怎么做

这是一张说明我需要的图片。您可以看到下面两个公司的架构,其中每个公司都有自己的IdP和一些SP。在红色中,您将看到我想要进行的通信:

  • 公司1的客户尝试访问公司2的SP电源
  • 供应商检查他是否有会话,如果没有(情况如何) 将他重定向到公司的idp 2
  • 公司1的IdP联邦成员对公司的IdP的认证 公司2
  • 在IdP 1和客户端之间进行认证
  • 向IdP 2提供一个令牌,证明身份验证成功。IdP2然后为客户端创建一个会话
  • IdP2和电源之间也会发生同样的情况
  • 请求的ressouce最终返回给客户机

  • 感谢您的回复

    首先让我澄清一下我想做什么:双重联合(SP和IDP2之间的联合,IDP2和IDP1之间的联合)。这仍然是一种罕见的情况,在这种情况下,您希望您的客户端在IDP中都有会话,并且希望为您的服务提供商抽象SSO的复杂性

    因为这是一种罕见的情况,而且协议没有涵盖,OpenAM还没有实现这一功能。您必须增加供应复杂性(SP),使其具有两个客户端id(每个IDP一个),客户端需要选择其IDP或将客户端id插入SP的URL中

    一些注意事项:


    在使用双重联合时,您需要确保Enterprise 1的客户不会访问Enterprise 2应该是私有的服务提供商

    首先让我澄清一下我想做什么:双重联合(SP和IDP2之间的联合,IDP2和IDP1之间的联合)。这仍然是一种罕见的情况,在这种情况下,您希望您的客户端在IDP中都有会话,并且希望为您的服务提供商抽象SSO的复杂性

    因为这是一种罕见的情况,而且协议没有涵盖,OpenAM还没有实现这一功能。您必须增加供应复杂性(SP),使其具有两个客户端id(每个IDP一个),客户端需要选择其IDP或将客户端id插入SP的URL中

    一些注意事项:


    在使用双重联合时,您需要确保Enterprise 1的客户不会访问Enterprise 2应该是私有的服务提供商

    “OAuth2联盟”是什么意思?你说的是“”吗?如果是,那么这是可行的,但要注意,例如,假设有两家公司。每一个都提供一项服务,但要求用户进行身份验证。因此,如果a公司的用户想要使用B公司的服务,他必须能够从a公司的IdP而不是B公司的IdP进行身份验证。因此,我的问题是:我们可以在OpenAM中使用OpenID Connect进行身份验证,还是必须使用SAML?如果它真的是一项“服务”,您可以使用OIDC。如果“B公司的服务”是一个web应用程序,SAML可能会更简单。是的,但我必须使用OpenID Connect,所以我正在尝试制作POC(概念验证),以便我知道在这种情况下应该使用哪种实现。那么我们如何实现这个联邦呢?在使用OIDC时不需要“联邦”。什么是“OAuth2联邦”呢?你说的是“”吗?如果是,那么这是可行的,但要注意,例如,假设有两家公司。每一个都提供一项服务,但要求用户进行身份验证。因此,如果a公司的用户想要使用B公司的服务,他必须能够从a公司的IdP而不是B公司的IdP进行身份验证。因此,我的问题是:我们可以在OpenAM中使用OpenID Connect进行身份验证,还是必须使用SAML?如果它真的是一项“服务”,您可以使用OIDC。如果“B公司的服务”是一个web应用程序,SAML可能会更简单。是的,但我必须使用OpenID Connect,所以我正在尝试制作POC(概念验证),以便我知道在这种情况下应该使用哪种实现。那么,我们如何实现这种联合呢?在使用OIDC时,不需要“联合”。