Salesforce Admin篇(四) Security 之Two-Factor Authentication & Single Sign On

本篇参考:android

https://c1.sfdcstatic.com/content/dam/web/en_us/www/documents/white-papers/2fa-admin-rollout-guide.pdfweb

https://blog.bessereau.eu/assets/pdfs/salesforce_single_sign_on.pdf数据库

https://blog.bessereau.eu/assets/pdfs/salesforce_security_impl_guide.pdf浏览器

做为salesforce管理员,在针对确保用户安全以及用户快速登录每每要多加考虑以及划清界限。本篇主要介绍两点:安全

1. 保障用户安全的不止帐号和密码,还能够经过其余的方式去加强安全性,好比 two-factor authentication,缩写为2FA.app

2. 单点登陆保证用户能够快速登录以及减小用户须要记住多个系统的帐号密码。dom

一. Two-Factor Authentication(2FA)ide

咱们在支付宝没有普及之前,若是网上购物,须要用到网银进行支付,即提供了银行卡帐号密码之后,还要有一个一次性的数字串去完成交付。保证别人了解你帐号密码的状况下依然无法直接盗取或者盗刷你的钱财。 2FA 有着相似的功能,即当你输入帐号密码之后,还须要一个认证的标识去决定你最终是否能够最终登录。这个标识掌握在你的手机中,当有登录操做,你能够随时清楚是不是你的登录,若是不是,拒绝掉,增长了安全性。学习

使用2FA 按照如下步骤走便可:测试

1. 设置 sesion security level

Setup 中搜索 Session Settings,在Session Security Levels的下面,将two-factor authentication放在右侧区域。

2. 建立 permission set配置2FA

输入label建立 permission set保存之后,在system 设置中,勾选‘Two-Factor Authentication for User Interface Logins’选项

3. 选择须要配置2FA的用户进行assign操做。

4. 下载salesforce authenticator app. 苹果手机去app store , android 手机去google play, 由于本人手机没有google play环境,因此可能部分功能没法使用。

点击添加帐号,会有两个单词,在permission set中配置的帐号登录salesforce之后会跳转到中间页,输入内容之后便和salesforce authenticator进行了绑定,之后登录之后都会在手机中进行受权操做。

绑定操做之后,如何进行解绑操做? 咱们第一想法是将此user从permission set中移除。可是此帐号已经和salesforce authenticator绑定,单纯的移除permission set无济于事。正确的操做为须要进入这个user,详情页中有一项App Registration: Salesforce Authenticator,点击 disconnect便可。

二. Single Sign On

Single Sign On 对于咱们来讲并不陌生,咱们在的公司可能有多个系统,不一样系统之间须要记住不一样的帐号增长了员工的麻烦量,忘记密码也会增长管理员的工做。对于多个系统状况下,使用单点登陆有太多的优点。

使用Single Sign On一般会经历如下的步骤:

  1. 用户尝试访问salesforce;
  2. Salesforce识别了这个SSO的请求而且生成了一个SAML请求;
  3. Salesforce重定向这个SAML请求到浏览器端;
  4. 浏览器重定向这个SAML请求到外部的identity provider;
  5. Identity provider验证了这个用户的身份而且将关于这个用户身份认证的SAML断言进行打包;
  6. Identity provider将SAML断言结果发送给salesforce;
  7. Salesforce验证断言是否正确;
  8. user能够正常的登录以及访问Salesforce。

这里涉及到了几个名词。

SSO是Single Sign On的缩写,意为单点登陆。

SAML是Salesforce单点登陆时使用的协议,全称为Security Assertion Markup Language。这里再引伸两个概念。Service Provider以及Identity Provider。Identity Provider用于对用户进行身份认证的,而 Service Provider用来请求用户身份认证是否经过的。SAML工做的原理为当一个用户要访问salesforce,Service Provider会向Identity Provider发出请求来验证当前用户是否经过的,Identity Provider再进行查询数据库等操做之后返回一个断言的response来决定是否有权限访问。这里对SAML有一个大概的描述方便了解,感兴趣的能够自行查看文档。

咱们继续看下面的图片,经过单点登录受权之后咱们能够经过Connected App访问外部的Service,包括谷歌,salesforce等。这里详细介绍两个概念,Identity Provider以及Servide Provider。针对Google / Salesforce 等服务,咱们能够理解成Service Provider, 中间的Salesforce能够理解成 Identity Provider。当咱们获得了Identity Provider的受权之后,咱们即可以直接访问Service Provider配置的对应的External Service,无需再进行External Service的登录操做。

 下面经过一个demo讲述如下Salesforce 2 Salesforce Single Sign-On的实例。

 1. Enable My Domain:针对Salesforce的两个org都要启用自定义的domain,启用方法能够查看https://help.salesforce.com/articleView?id=domain_name_overview.htm&type=5

此篇中本人的两个org的地址分别为:

https://zero-zhang-dev-ed.lightning.force.com

https://zhangyueqi-3-dev-ed.lightning.force.com

咱们使用上面的做为 Identity Provider,下面的做为Service Provider。

2.  获取 Identity Provider的信息。咱们在Identity Provider环境搜索identity provider能够看到如下的内容,包括Issuer,Salesforce Identity等信息。若是当前没有启用咱们点击Enable便可。这里咱们download下来Certificate 以及 metadata。

 3. 配置Service Provide Single Sign-On的信息:在 SetUp出搜索 single sign on 点击后点击New From Metadata,文件选择咱们在Identity Provider环境中download下来的metadata。

 4. 其余的配置项均保留,针对 Identity Provider Certificate选择上面Identity Providerdownload下来的certificate,SAML Identity Type选择 Federation项后保存。 

5. 在Servide Provider中,Setup搜索 my domain 将配置的Authentication Service放出来。

 6. 在 Identity Provider环境配置Connected App. Lightning 环境下SetUp中搜索 App Manager后点击New Connected App按钮。Connected App Name 咱们这里命名为Single Sign On Connected App,名字能够任意起, 勾选Enable SAML之后,配置 Entity Id项以及ACS URL。Entity Id 对应 Service Provider中的Single Sign-On配置的Entity Id;ACS URL取得是 Service Provider中的EndPoint区域的Login URL。Subject Type选择 Federation Id后保存。

 7. 保存后的Identity Provider的 Connected App点击Manage后选择 Manage Profiles 或者 Manage Permission Sets来设置哪些人能够进行单点登陆设置。

 至此咱们便已经配置完 Salesforce 2 Salesforce Single Sign-On 功能。下面进行测试。

1. 咱们在Identity Provider环境的user中配置 Federation Id为00000001,此帐号 Profile为 System Administrator,在咱们上面的配置的Profile中。

 2. 咱们在 Service Provider中配置帐号一样Federation ID为00000001.这里须要注意的是 Federation ID在同一个系统中必须是惟一的,在不一样的系统中若是须要SSO,须要配置相同的值。

 3. 两个帐号均退出后,登录 Identity Provider环境,登录之后。打开浏览器输入 Service Provider的domain后,选择下方的登录方式,点击之后便完成了单点登陆。

总结: 篇中针对 Admin的基础知识讲解了一下 Two-Factor以及 Salesforce-Salesforce Single Sign-On的配置,不少细节知识没有涉及到,感兴趣的自行查看文档进行深刻学习。篇中有错误的地方欢迎指出,有不懂的欢迎提问,感兴趣的能够玩一下 Salesforce 2 Community的SSO配置。

相关文章
相关标签/搜索