sso saml_使用签名的SAML断言实现身份提供者发起的SSO

本文档详细介绍了如何配置DataPower作为SSO身份提供者,使用签名的SAML断言实现从DataPower到Salesforce的单点登录(SSO)。教程涵盖了从创建Salesforce用户账户到配置DataPower的各个步骤,包括证书创建、域名管理、SSO设置、DataPower的HTTPS前端处理程序、多协议网关和AAA策略。通过这一过程,企业能够实现对内部和外部应用的集中身份管理。
摘要由CSDN通过智能技术生成

sso saml

随着越来越多的机构和组织在线提供服务和协作,员工需要访问内部部署和基于云的应用程序来进行日常工作。 这就要求实现单一登录(SSO)基础结构,使用户可以登录一次即可访问所有授权的内部和外部资源及应用程序。 具有大量Salesforce用户群的组织可以利用其现有的SSO基础结构将其实施到Force.com平台,该平台支持由外部SSO身份提供商提供的联合身份管理。 Force.com平台支持SSO的委派身份验证和联合身份验证。

本教程系列仅关注联合身份验证 ,它比委托身份验证具有多个优点,并且在IT行业中被广泛接受。 联合身份验证无法在Force.com平台上验证用户的实际密码。 相反,平台会在HTTP POST请求中接收安全性声明标记语言(SAML)声明。 SAML声明的有效期有限,包含唯一标识符,经过数字签名,并可以选择加密。 如果断言在其有效期内仍然有效,并且具有以前未使用过的标识符,并且具有来自可信身份提供者的有效签名,则将授予用户对所请求的资源或页面的访问权限。 使用IBM®WebSphere DataPower(以下称为DataPower)作为SSO身份提供程序,企业可以为所有内部应用程序和外部应用程序(例如Force.com)使用集中式管理界面来实现用户身份的单个注册表。支持联合单点登录。

本系列包括以下四个教程:

  1. 第1部分:身份提供者使用签名的SAML断言启动SSO(本教程)
  2. 第2部分:身份提供者使用加密并签名的SAML断言启动SSO
  3. 第3部分:服务提供商使用已签名的SAML断言启动SSO
  4. 第4部分:服务提供商使用加密并签名的SAML断言启动SSO

联合身份验证的工作方式

SAML提供了一种基于XML的安全解决方案,用于在身份提供商(例如DataPower)和服务提供商(例如Force.com)之间交换用户安全信息。 除了身份提供商启动的单点登录之外,SAML 2.0还支持服务提供商启动的单点登录。 这样,Force.com之类的服务提供商就可以查询身份提供商以进行身份​​验证。 SAML 2.0还添加了一个称为“单次注销”的有用功能,该功能定义了一种机制,可以快速,轻松地注销所有服务提供者。

参与SAML交易的各方

SAML交易涉及三方:

  1. 身份提供者(声明方):身份提供者是提供SAML声明的授权系统。 在本教程系列中,DataPower是身份提供者。
  2. 服务提供者(依赖方):服务提供者是指系统(在本例中为Force.com),该系统信任身份提供者的用户信息并使用该数据提供对所请求资源或页面的访问。
  3. 用户(断言的主题):这是需要单次登录Force.com的用户。

SAML的用例

SAML有两个重要的用例:

  1. 身份提供者启动的SSO:用户直接向身份提供者请求SSO登录,登录,然后将其重定向(HTTP POST绑定)到服务提供者处的预定义登录页面。
  2. 服务提供商启动的SSO:用户请求从服务提供商访问受保护的资源或页面。 服务提供者使用SAML身份验证请求将请求重定向(HTTP POST或REDIRECT绑定)到身份提供者。 身份提供者验证SAML身份验证请求,如果用户尚未登录,则向用户询问登录凭据,然后使用HTTP POST绑定将SAML断言响应发送给服务提供者。 服务提供者将验证SAML声明并重定向到最初请求的资源或页面。

Force.com支持这两种用例。 但是,本教程(第1部分)的范围仅限于由身份提供者发起的SSO登录,该登录使用签名的SAML断言。

来自身份提供者的SAML断言响应包含标头信息,主题以及关于主题的断言声明,其形式为属性和条件。 本示例中使用的SAML声明包含来自身份提供者的联合ID,该ID在Force.com平台内是唯一的,并映射到Force.com用户,如图1和图2所示。

图1.身份提供商启动了SSO登录到Salesforce
身份提供商启动了SSO登录到Salesforce
图2.身份提供者启动的SSO登录过程
身份提供商启动的SSO登录过程

Force.com平台上的单点登录设置

本节介绍了在Force.com平台上进行单点登录设置的分步指南。

步骤1:创建Salesforce用户帐户

  1. 首先,如果您尚未创建一个用户帐户(Salesforce管理员),则在Salesforce开发人员站点上 。 图3显示了Salesforce用户(开发人员版)的注册过程。
    图3. Salesforce用户帐户(Developer Edition)的创建
    Salesforce用户帐户(开发人员版)的创建
  2. 通过输入在注册过程中获得的凭据登录到Salesforce ,并创建另一个用户帐户。 确保输入如图4所示的联合身份验证ID,以启用该用户帐户的SSO登录。 图5显示了一个Salesforce用户详细信息页面。 本教程系列说明的示例使用以下示例用户帐户进行SSO设置。 我们强烈建议您不要启用登录功能,为您的组织的Salesforce管理员单,因为身份提供者(DataPower的)应用程序的任何中断将阻止所有管理有关的活动。

    用户ID: sdfc.user@sdfc.com

    联盟ID: sdfc.user@sso.sdfc.com

    图4.输入联合身份验证ID以启用SSO
    输入联盟ID以启用SSO
    图5. Salesforce上的用户帐户(标准平台用户)详细信息
    Salesforce上的用户帐户(标准平台用户)详细信息

步骤2:创建自签名或CA签名的证书

  1. 证书用于与外部身份提供商进行经过身份验证的单点登录。 如果身份提供者生成的SAML声明未加密,则可能不需要身份提供者发起的SSO的Salesforce证书。
  2. 创建证书后,将其下载并保存到本地系统中。 本教程系列说明的示例使用以下自签名证书(标签: Salesforce SSO ),如图6和图7所示。
    图6. Salesforce上的自签名证书列表
    Salesforce上的自签名证书列表
    图7.自签名证书(标签:Salesforce SSO)详细信息页面
    自签名证书(标签:Salesforce SSO)详细信息页面

步骤3:管理Salesforce网域

使用“我的域”,您可以定义自定义Salesforce域名(请参见图8)。 自定义域名可以通过多种方式帮助您更好地管理组织的登录和身份验证。 有关域管理的详细信息,请参阅Salesforce文档 。 本教程系列说明的示例使用以下域名。 我们建议您为组织使用合适的域名。 示例域名的示例是https://dipak-sdfc-dev-ed.my.salesforce.com/

图8. Salesforce上的“我的域”概述
我在Salesforce上的域概述

步骤4:在Salesforce上设置SSO设置

  1. 以Salesforce管理员身份登录,然后转到设置>安全控制>单一登录设置 。 确保在“使用SAML联合单一登录”选项卡上选中了“ 启用S​​AML”复选框,然后单击“ SAML单一登录设置”选项卡上的“ 新建”按钮。 图9和图10显示了本教程使用的Salesforce SSO设置。 在Force.com平台上进行此SSO设置之前,请确保您已经创建了DataPower加密密钥和相关的证书,如步骤5所述
  2. 将DataPower证书上载为身份提供者证书 ,以便Force.com平台可以验证与SAML断言关联的签名。
  3. 使用在步骤2中生成的自签名或CA签名证书作为“签名证书”。 为颁发者实体ID字段输入适当的值。 本示例中使用的SAML声明未加密,并且在Subject语句的NameIdentifier( NameID )字段中包含登录用户的联盟ID
  4. 保存SAML单一登录设置(图9)后,记下Salesforce登录URL(例如, https://dipak-sdfc-dev-ed.my.salesforce.com?so=00DF0000000ghLC )。
    图9. Salesforce上的SAML单一登录设置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值