salesforce零基础学习(一百零八)MFA
本篇参考:https://security.salesforce.com/mfa
https://sfdc.co/bvtuQT (MFA官方研讨会的文档)
https://sfdc.co/iwiQK(MFA中华区研讨会视频)
Salesforce Admin篇(四) Security 之Two-Factor Authentication & Single Sign On
我们之前介绍过关于登录安全的 2fa,今天主要讲的是MFA。 MFA 官方的介绍是到2022年2月1日起,salesforce登录环境要强制要求启用MFA。换言之,MFA没搞定,不允许登录salesforce了。那么所有license,所有场景都需要强制吗,是否收费,如何实施是大部分人的疑问,主要针对这几点进行描述。
一. 什么场景使用 MFA
说MFA 强制使用也不是一个特别绝对的说法,也不必过度紧张。MFA强制使用也是有一个 scope范围的。我们基于用户的类型以及用户登录的媒介进行两个表格的梳理。
我们针对salesforce的用户的类型,可以简单的归纳成3类: 内部用户,外部用户,chatter用户。
内部用户: 比如admin / standard user等内部用户,可以访问 salesforce UI的用户。license通常是 salesforce / platform user / standard user等。
外部用户:代表只能访问 community cloud用户或者site等的外部用户。license通常有Customer Community,Partner Community,External Identity User。
Chatter用户:通常 license/ profile是Chatter External, Chatter Free和Chatter Only用户
用户类型 |
是否需要实施MFA |
内部用户 |
是 |
外部用户 |
否 |
Chatter |
否 |
如果只是针对用户类型考虑,并不绝对,也不客观。举个例子: 有些项目情况比较特殊,Salesforce可能只是当成了一个云服务器,真正的UI操作都是在外部系统。外部系统可能通过 rest api / tooling api等访问 metadata以及访问数据,那这种情况即使用户是内部用户,即使是system admin的Profile,不访问SF的UI还需要强制MFA吗?结果是不需要的。所以我们还需要考虑登录类型或者授权方法的维度。
登录类型 / 授权方法 |
是否需要实施MFA |
介绍/注意事项 |
直接登录到 Salesforce的UI |
是 |
适用于Salesforce所有的界面,包括手机app以及客户app(比如Dataloader)。针对Dataloader有一个注意点:Dataloader有两种登录方式,Oauth是需要MFA的, Password方式走API Login是不需要的 |
自动化测试和 RPA 帐户登录到 UI |
否 |
自动化测试账号,MFA是不需要强制实施的 |
API / Integration 登录 |
否 |
|
设备激活/身份验证 |
是 |
当用户登录在一个未识别的设备或者浏览器时,或者IP在 trust IP以外的场景,验证时需要走MFA |
代理身份认证 |
是 |
详见:https://help.salesforce.com/s/articleView?id=sf.sso_delauthentication.htm&type=5 |
单点登录 |
是 |
|
Risk-Based/Continuous Authentication |
具体情况具体分析 |
根据官方的介绍文档,具体情况具体分析。 |
Trusted Corporate Devices / Device Certificates |
同上 |
同上 |
Trusted Networks |
同上 |
同上 |
User Certificates |
同上 |
同上 |
上面的一些登录方式或者授权方式项目中没使用过,为了防止翻译错误或者解释错误,建议自行查看文档。所以我们根据文档中的介绍,可以看出来,大部分的项目需要强制MFA的场景是内部用户,并且需要访问 salesforce UI的场景,如果只是用于API集成,则大可不必。
二. MFA支持的实现方式以及实现步骤
MFA的实施根据官方建议可以采用大概三种方式:
- Salesforce Authenticator:此种方式的实现步骤和2FA极其相似,而且是免费的。所以此种MFA方式是性价比最高的,而且Salesforce Authenticator如果出现了问题,可以随时给salesforce提紧急case帮助解决。
- 第三方身份验证器:官方也例举了一些,这些需要考虑一下费用,以及你的公司的使用用户所在地等等。如果针对国内客户,需要考虑认证方式是否可以访问以及是否稳定。
- 密钥方式
针对文本验证,邮件等方式验证,不计入MFA范畴,所以即使你现在的项目使用了这些种验证方式,根据salesforce的安全性考虑,还要在MFA强制启用之前,选择前面的3种方式之一实行。
本篇介绍的是通过 Salesforce Authenticator。Google app访问不了的小伙伴,后续项目实施记得下载apk以后,提供给用户一个 publick link去下载。
启用MFA其实特别简单。创建一个 permission set,然后 在 system permission勾选这两个permission即可。
创建完成以后,将需要启用MFA的user添加到这个permission set即可。我们以自己的管理员账号登录到salesforce,账号密码输入完成以后,需要进行Salesforce Authenticator的关联和校验。
这里因为手机软件对当前页面保护措施要求严格,没法截图,所以不添加手机端的截图。这里有一个很尴尬的点,就是我第一次对手机端授权关联以后,报错了。。。
按照提示,将web端 log out,并且将手机端 authenticator账号解绑并且重新操作以后,顺利搞定。(Notes:这里实施团队强烈建议客户做一个FAQ进行说明)
接下来就是我们想知道系统用户中都有哪些人已经做了MFA的账号绑定,我们只需要在 user视图中将MFA相关的字段拖出,可以很方便的查看到,如下图所示。
除了看谁已经绑定了MFA以外,我们还可以在 setup 访问 Identity Verification History查看用户认证登录的信息。
当然,上述只是最简单的介绍了一下 MFA的简单的配置以及一些小特性。除此之外,小伙伴们如果想更加细致的了解MFA的内容,目前salesforce的org已经在setup处增加了MFA 的小助手,大家可以 step by step进行学习了解。
当然,如果时间紧急,并且没有resource去进行MFA的配置,也可以联系salesforce原厂的实施团队,他们针对这个也可以进行有偿实施,详情可以查看视频内容。
总结:篇中只是简单的介绍了MFA的一种简单的实现方式。MFA和2FA的区别,按照官方的说法就是2FA是MFA的一部分,配置上可能也就省了session setting中的2fa的设置,整体MFA实施难度还好,无非就是针对app的安装,针对用户的training需要更好的进行推广。篇中有错误欢迎指出,有不懂欢迎留言。
附: authenticator的app已经放在百度网盘。链接: https://pan.baidu.com/s/16v52M6cLEBAGi29Xugm8rg 提取码: 2eee 复制这段内容后打开百度网盘手机App,操作更方便哦
salesforce零基础学习(一百零八)MFA的更多相关文章
- salesforce 零基础学习(五十二)Trigger使用篇(二)
第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...
- salesforce 零基础学习(六十八)http callout test class写法
此篇可以参考: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_restfu ...
- salesforce零基础学习(八十)使用autoComplete 输入内容自动联想结果以及去重实现
项目中,我们有时候会需要实现自动联想功能,比如我们想输入用户或者联系人名称,去联想出系统中有的相关的用户和联系人,当点击以后获取相关的邮箱或者其他信息等等.这种情况下可以使用jquery ui中的au ...
- salesforce零基础学习(八十二)审批邮件获取最终审批人和审批意见
项目中,审批操作无处不在.配置审批流时,我们有时候会用到queue,related user设置当前步骤的审批人,审批人可以一个或者多个.当审批人有多个时,邮件中获取当前记录的审批人和审批意见就不能随 ...
- salesforce零基础学习(八十七)Apex 中Picklist类型通过Control 字段值获取Dependent List 值
注:本篇解决方案内容实现转自:http://mysalesforceescapade.blogspot.com/2015/03/getting-dependent-picklist-values-fr ...
- salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件
在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的 ...
- 【转】【Salesforce】salesforce 零基础学习(十七)Trigger用法
看本篇之前可以相应阅读以下Trigger相关文章: 1.https://developer.salesforce.com/page/Trigger_Frameworks_and_Apex_Trigge ...
- salesforce零基础学习(九十六)Platform Event浅谈
本篇参考:https://developer.salesforce.com/blogs/2018/07/which-streaming-event-do-i-use.html https://trai ...
- salesforce零基础学习(一百零五)Change Data Capture
本篇参考: https://developer.salesforce.com/docs/atlas.en-us.232.0.api_streaming.meta/api_streaming/using ...
- salesforce零基础学习(一百一十)list button实现的一些有趣事情
本篇参考: salesforce零基础学习(九十五)lightning out https://developer.salesforce.com/docs/component-library/docu ...
随机推荐
- Android Studio 百度地图导航
配置就不再多说了,上一篇已经详细说过了,这次就是根据经纬度坐标做地图导航,路径规划.直接上代码: package com.example.appview.mian_page.Frament.Anzhu ...
- nacos配置
server: port: 3377 spring: application: name: nacos-config-client cloud: nacos: discovery: #nacos 服务 ...
- SQLServer数据库查询语法
SQLServer数据库查询语法 前言: SQLServer数据库介绍: SQLServer数据库是微软公司推出的一款关系型数据库系统,SQL Server是一个可扩展的.高性能的.为分布式客户机/服 ...
- HDD成都站:HMS Core 6.0带来新可能 多元服务驱动产品商业成功
9月10日,由华为开发者联盟主办的HDD(Huawei Developer Day)于成都举行.活动中,华为HMS Core各领域专家重点解读了HMS Core 6.0为开发者带来的多项全新能力,及生 ...
- adb 常用命令大全(4)- 应用管理
查看应用列表 语法格式 adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER] ...
- Junit5快速入门指南-3
Fixtures 是测试中非常重要的一部分.他们的主要目的是建立一个固定/已知的环境状态以确保 测试可重复并且按照预期的方式运行.比如在app测试中 基类@BeforeClass 配置初始化,初始化d ...
- <input type="file">如何实现自定义样式
利用样式覆盖来实现效果:先看下原本和改变后的样式 1 <!doctype html> 2 <html> 3 <head> 4 <title>file自定 ...
- (6)java Spring Cloud+Spring boot+mybatis企业快速开发架构之SpringCloud-Spring Boot项目详细搭建步骤
在 Spring Tools 4 for Eclipse 中依次选择 File->New->Maven Project,然后在出现的界面中按图所示增加相关信息. <paren ...
- 如何在线安全清理mysql慢日志
部门mysql数据库的服务器磁盘空间快满了,查看了下磁盘的慢日志,发现占了50多个g,百度了资料后删除成功,现在和大家分享下我清理的过程,或许有更好的办法. 1.首先连接进入mysql,查看慢日志的状 ...
- 洛谷P1088——火星人(全排列+数学模拟)
题目描述 人类终于登上了火星的土地并且见到了神秘的火星人.人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法.这种交流方法是这样的,首先,火星人把一个非常大的数字告诉人类科学 ...