Salesforce中的单点登录简介

单点登录的定义

引自维基百科:

单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一注销(single sign-off)就是指,只需要单一的注销动作,就可以结束对于多个系统的访问权限。

使用单点登录的好处包括:

  • 降低访问第三方网站风险(用户密码不存储或外部管理)。
  • 从不同的用户名和密码的组合减少密码疲劳。
  • 减少花费的时间重新输入密码相同的身份。
  • 降低IT成本适当降低一些IT帮助台调用有关密码。
  • SSO集中的所有其他应用程序和系统,用于身份验证服务器的身份验证,并与技术相结合是为了确保用户不必主动输入凭据一次以上。

Salesforce中的单点登录方式

在Salesforce中有以下方法实现单点登录:

  • 使用“Security Assertion Markup Language (SAML)”在相关的网络系统中发送验证信息。

  • 使用代理验证单点登录将Salesforce与管理员选择的验证方法集成。可以与LDAP(轻量目录访问协议)服务器进行集成,或使用标记(而不是密码)进行身份验证。

  • 使用身份提供商。身份提供商是受信任的提供商,提供其他网站的验证信息用来登录Salesforce。

Salesforce中的单点登录工作原理

  1. 当用户尝试登录时,Salesforce会生成并发出一个SAML请求
  2. SAML请求会发送到身份提供商
  3. 身份提供商会验证该用户的身份,并发回一个SAML验证结果
  4. Salesforce接收此结果,并决定是否允许用户登录

SAML

SAML是Salesforce提供的类XML语言,可以用于从企业入口网站或身份提供商单点登录到Salesforce。通过SAML,不同的服务之间可以进行用户信息的转移,例如从 Salesforce 到 Microsoft 365。

身份提供商会执行大部分工作来设置单点登录:

  1. 建立一个SAML身份提供商,并得到连接到Salesforce的信息。单点登录的请求会由身份提供商向Salesforce发送,当Salesforce收到请求之后会根据系统中的配置进行验证,决定登录是否成功。
  2. 提供登录和登出页面的URL给身份提供商。
  3. 在Salesforce中配置SAML的单点登录。

为单点登录配置SAML设置

启用SAML单点登录配置的步骤如下:

  1. 在Salesforce中,从“设置”中,在快速查找方框中输入“单点登录设置”,选择“单点登录设置”链接,单击编辑。
  2. 选择“启用SAML”。
  3. 指定身份提供商使用的SAML版本。
  4. 保存。

在SAML单点登录设置中,可以用三种方式新建配置:

  • 新建:手动指定所有设置。
  • 从元数据文件中新建:从身份提供商的XML文件中导入SAML 2.0设置。此选项读取XML文件,并用其完成尽可能多的设置。
  • 从元数据URL中新建:从公用URL中导入SAML 2.0设置。此选项读取公用URL上的XML文件,并用其完成尽可能多的设置。URL必须事先添加到“远程站点设置”,以从Salesforce组织中进行访问。

证书和密钥管理

在“设置”界面中,搜索“证书和密钥管理”,点击“证书和密钥管理”链接,即可进入“证书和密钥管理”界面。

在此界面中,可以新建和管理证书,以通过外部网站对单点登录进行身份验证,或将此Salesforce组织用作身份提供商,或验证从此Salesforce组织到外部站点的请求。

启用即时用户配置

在新建或编辑SAML的设置中,可以选择是否启用“即时用户配置”(Just-in-Time Provisioning)。

在“用户配置类型”中,有两种选择:

  • 标准:可以自动配置用户
  • 带有Apex处理器的自定义SAML JIT:根据Apex类中的逻辑配置用户。然后要在“SAML JIT处理器”中选择一个现有的Apex类或自动创建一个新的Apex类,此类必须实现了“SamlJitHandler”接口

使用即时用户配置,可以在用户通过SAML配置第一次试图登录的时候立即创建普通和入口网站用户,而无需提前创建用户。即时用户配置配合使用SAML身份提供商以将正确的用户信息以SAML 2.0声明传递到Salesforce。

测试单点登录连接

在配置了SAML设置后,可以通过访问身份提供商的应用程序来测试它。

在“设置”界面中的“单点登录设置”界面,可以点击“SAML声明验证器”来验证SAML配置。

在“设置”界面中的“登录历史”界面,可以查看登录的历史。当单点登录出现问题时,可以通过这里来查找原因,也可以使用“SAML声明验证器”来验证SAML配置。

原文地址:https://www.cnblogs.com/chengcheng0148/p/salesforce_sso_intro.html