Salesforce中的单点登录简介
单点登录的定义
引自维基百科:
单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一注销(single sign-off)就是指,只需要单一的注销动作,就可以结束对于多个系统的访问权限。
使用单点登录的好处包括:
- 降低访问第三方网站风险(用户密码不存储或外部管理)。
- 从不同的用户名和密码的组合减少密码疲劳。
- 减少花费的时间重新输入密码相同的身份。
- 降低IT成本适当降低一些IT帮助台调用有关密码。
- SSO集中的所有其他应用程序和系统,用于身份验证服务器的身份验证,并与技术相结合是为了确保用户不必主动输入凭据一次以上。
Salesforce中的单点登录方式
在Salesforce中有以下方法实现单点登录:
使用“Security Assertion Markup Language (SAML)”在相关的网络系统中发送验证信息。
使用代理验证单点登录将Salesforce与管理员选择的验证方法集成。可以与LDAP(轻量目录访问协议)服务器进行集成,或使用标记(而不是密码)进行身份验证。
使用身份提供商。身份提供商是受信任的提供商,提供其他网站的验证信息用来登录Salesforce。
Salesforce中的单点登录工作原理
- 当用户尝试登录时,Salesforce会生成并发出一个SAML请求
- SAML请求会发送到身份提供商
- 身份提供商会验证该用户的身份,并发回一个SAML验证结果
- Salesforce接收此结果,并决定是否允许用户登录
SAML
SAML是Salesforce提供的类XML语言,可以用于从企业入口网站或身份提供商单点登录到Salesforce。通过SAML,不同的服务之间可以进行用户信息的转移,例如从 Salesforce 到 Microsoft 365。
身份提供商会执行大部分工作来设置单点登录:
- 建立一个SAML身份提供商,并得到连接到Salesforce的信息。单点登录的请求会由身份提供商向Salesforce发送,当Salesforce收到请求之后会根据系统中的配置进行验证,决定登录是否成功。
- 提供登录和登出页面的URL给身份提供商。
- 在Salesforce中配置SAML的单点登录。
为单点登录配置SAML设置
启用SAML单点登录配置的步骤如下:
- 在Salesforce中,从“设置”中,在快速查找方框中输入“单点登录设置”,选择“单点登录设置”链接,单击编辑。
- 选择“启用SAML”。
- 指定身份提供商使用的SAML版本。
- 保存。
在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配置。
Salesforce中的单点登录简介的更多相关文章
- 使用 CAS 在 Tomcat 中实现单点登录 http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/
developerWorks 中国 技术主题 Open source 文档库 使用 CAS 在 Tomcat 中实现单点登录 单点登录(Single Sign On , 简称 SSO )是目前比较流行 ...
- 【IBM】使用 CAS 在 Tomcat 中实现单点登录
来源: IBM Developer http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/ 张 涛 (zzhangt@cn.ibm.com ...
- CAS 在 Tomcat 中实现单点登录
单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统 中,用户只需要登录一次就可以访问所有相互信任的应用系统.CA ...
- 【C#】ASP.NET网页中添加单点登录功能
背景 首先,要说明的是,原先需求定义的是,同一个账号只能同时有一个人来登录,如果另外一个登录的话,前一个登陆者就自动被踢掉.本来原先要做成存储到服务器的数据库中,但是后来如果是非正常退出的话 下次就没 ...
- 使用 CAS 在 Tomcat 中实现单点登录
单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.CAS ...
- 在Tomcat中配置单点登录
单点登录:Single Sign-On .概述 一旦你设置了realm和验证的方法,你就需要进行实际的用户登录处理.一般说来,对用户而言登录系统是一件很麻烦的事情,你必须尽量减少用户登录验证的次数.作 ...
- shiro中接入单点登录功能
最近新建的系统中使用了shiro,而shiro框架中包含登录认证和鉴权的功能,因为我们系统要统一接入公司内部的单点登录(isso)系统,所以通过isso的登录用户,需要在shiro中置为已认证,一下提 ...
- Java Web网站应用中的单点登录
采用SSH架构加以说明:1. 建立一个登录管理类LoginManager2. 在LoginManager中定义一个集合,管理登录的用户.3. 在Spring中将LoginManager配置成单例 ...
- Yii中配置单点登录 即多个子站同步登录
研究Yii的同步登录大概2个多月,几乎查遍了网上所有资料和案例,但都不是很理想,最后摸索出整理出来以下配置方案. 以下配置文件在config.php中,所有需要同步的站点都需要填写.网上一些站点给出的 ...
随机推荐
- 微信小程序:scroll滑到指定位置
概述 这是我开发微信小程序遇到的坑中的一个,专门记录下来,供以后开发时参考,相信对其他人也有用. scroll滑到指定位置,有两种解决方案,一种是用scroll-view标签,另一种是用wx.page ...
- LeetCode: 103_Binary Tree Zigzag Level Order Traversal | 二叉树Zigzag层次遍历 | Medium
本题也属于层次遍历的变形,不同之处在于其遍历的方法是交替进行的,形成一个ZigZag的曲线形式,如下: 代码如下: struct TreeNode { int val; TreeNode* left; ...
- HoloLens开发手记 - 使用Visual Studio Using Visual Studio
不论你是否使用DirectX或Unity来开发全息应用,你都会使用Visual Studio 2015来进行调试和部署应用.在本部分,你将会学习以下内容: 如何通过Visual Studio将你的应用 ...
- 列表list切片
list1 = [1, 2, 3, 4, 5, 6] list1[::-1] >>>[6, 5, 4, 3, 2, 1] list1[:3:-1] >>>[6, 5 ...
- Spring Bean 的生命周期,如何被管理的?
定义 Bean是一个被实例化,组装,并通过Spring IOC容器(BeanFactory和ApplicationContext容器)所管理的对象. 作用域 Spring支持五个作用域,分别是sing ...
- [Umbraco] umbraco中如何分页
分页功能应该说是web开发中最基本的功能了,常规的做法是通过查询sql语句进行分页数据显示.但在umbraco中却不是这样子的.而且通过xpath中的postion来定位.如下代码 <?xml ...
- 批量去除文件的BOM头
<?php class KillBom{ //定义扩展名 public static $m_ext = ['txt','php','js','css']; /** * 传入一个任意文件,自动区分 ...
- 【转】php结合redis实现高并发下的抢购、秒杀功能
抢购.秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少("超卖"问题)对于第一个问题,已经很容易想到用缓存 ...
- xml与Excel转换
使用Python将如下xml格式转换为Excel格式: xml转为xls格式文件: xml格式如下: <?xml version="1.0" encoding="U ...
- SSE图像算法优化系列五:超高速指数模糊算法的实现和优化(10000*10000在100ms左右实现)。
今天我们来花点时间再次谈谈一个模糊算法,一个超级简单但是又超级牛逼的算法,无论在效果上还是速度上都可以和Boxblur, stackblur或者是Gaussblur想媲美,效果上,比Boxblur来的 ...