Community Cloud零基础学习(三)Partner Account
本篇参考:http://salesforce.vidyard.com/watch/bLE3QNRSej2iasw9vvc6Tk
http://salesforce.vidyard.com/watch/kXk6BaNlWJP27UyFO8vNUg
前一篇讲了custom community的开启以及简单的使用,custom community固然比较好,但是访问的数据有限,如果需要和CRM数据相关的(Lead/Opportunity等),我们需要使用partner community license。本篇主要讲解partner community的启用以及数据权限的控制。
一. partner community的启用
某个公司有某些产品使用salesforce进行销售,其有很多重要客户购买了产品作为了资产,当客户购买产品使用以后觉得很好并且想作为合作伙伴共同进行协同销售,此客户便可以同时变成partner account,并且其对应的contact可以作为partner contact去共享数据操作。partner community的启用步骤如下:
1. account page layout将Mobile & Lightning Actions中的Enable as Partner以及Disable Partner Account 两个action移到page layout中;
2. contact page layout将Mobile & Lightning Actions中的Enable Partner User以及Disable Partner User两个action移到page layout中;
这两步做好以后我们就可以转换一个account变成一个partner account了,demo中使用Edge Communications这个名字的account,我们申请的dev环境默认就有此客户的数据信息。
3. 当quick action处显示的按钮为disable Partner Account说明我们已经成功的enable partner account,Account的表中有字段 IsPartner来标记它是否为一个partner account,默认情况下我们需要点击Enable Partner Account按钮变成一个partner account。
4. 当我们对account转换成partner account以后,便可以对他们的contact转换成partner contact.默认显示的quick action为Enable Partner User,点击此按钮以后会跳转到创建user的页面,我们只需要license选择 Partner Community,Profile选择Partner Community User即可。当然,如果 Partner Community User这个标准的profile搞定不了,建议大家可以克隆一下这个profile,然后按照项目需求设置相关的权限。下图中展示了Disable Partner User说明已经启用成功,点击Disable按钮则会禁用。
这个是我们创建的user信息,我们默认创建的时候,理论上role是不用操作和选择的,这里是因为我们设置了account role的层数超过了1,所以这里可以选择,下面的章节会对数据访问权限等进行讲解。通过图中信息我们可以看到当前的user上有一个字段为contact,当contact挂值情况下,代表这个user是一个community user。
5. 我们创建一个template为 Partner Central的community,配置好以后选择Administrator|members将Partner Community User设置到available,然后settings将community 状态设置成active即可。
二. Who see What
当我们创建好partner community并且已经对account / contact转换成相关的 partner account / partner contact以后,下一步应该考虑的是谁能看到什么,怎么设置默认权限,怎么扩展权限,下面的内容将简单的介绍一下community下的数据权限以及共享的简单管理。
1. community role hierarchy
Salesforce针对数据的权限管理可以大概分4层,Org-Wide Defaults / Role Hierarchy / Sharing Rules / Manual Share。这四层不管是内部还是外部community针对数据权限控制都适用。
Org-Wide Default是最基本的控制,通过 profile / permission set来设置人员对于某个某些表的CRUD / View All / Modify All的权限。
Role Hierarchy在Salesforce中是一个特别常用的功能,你的上级领导业务上可以看到他的所有的下属的数据,这个就是基于role hierarchy默认实现,如果涉及到某些隐私的数据需要只有owner以及管理员可以查看的情况下,需要在sharing setting的grant access via role hierarchy反选。下图中VP Channel Sales作为Role中的最高点,默认情况下,他就可以看到US Channel Sales Director等所有的Role的数据,前提是grant access via role hierarchy勾选的情况下。
Sharing Rules在我们的项目开发中更是不可或缺的功能,当默认的sharing规则不能搞定所有的场景,某些场景可能级别低的针对某种场景也要协同合作的时候,可以基于Sharing Rule设置自定义的共享规则来设置其他 User / Group / Role的共享权限。比如account的industry 为Energy情况下需要共享给Group 名称为 Energy Core Members的所有成员有Read Only权限,无论members的Role是什么,这时候就要用到了Sharing Rules了。
Sharing Rule有两种实现,基于owner的以及基于条件的,这两种常用功能大家不懂得自行补齐基础知识。
Manual Sharing是针对数据owner的权利,数据的owner可以将自己own的数据共享给别人去赋予别人对某条数据的权限。
在数据权限管理上,内部和外部是一样的操作。在之前的custom中,我们知道没有role的概念,在partner community中,我们可以进行role的设置从而实现role hierarchy。在salesforce中最多可以设置3层,在community setting中即可配置。当然,salesforce并不建议大家多配置层级,多配置层级会影响performance,所以一层能搞定的业务用一层,一层搞不定的用两层,如果业务有必要的需求情况下再用3层。
设置完以后,编辑以前的community user,便可以选择这个community user的对应的role了,community user选择的role的名字为account 的name + manager / user等命名,设置完以后便实现了community 的role hierarchy。
2. community sharing setting
上面有提到过 sharing setting可以扩展share权限。我们在sharing setting处可以设置内部和外部的基于某些表的访问权限,salesforce要求的是针对外部的访问权限应该小于等于内部的人的权限,即内部的人员对某个表的数据权限一定要高于外部。如果默认的sharing setting / sharing set以及role hierarchy满足不了情况下,我们可以对外部的community 用户设置sharing setting来扩充他们的数据访问权限。下面的demo为我们设置如果Account的Industry 为Energy情况下,我们需要共享给Group名称为Partner_Managers_and_Channel_Director的所有用户,这个group中我们放置了partner role为Edge Communities Partner Manager。Sean的用户我们的角色为这个manager,用来进行权限的共享实验。
我们先对Sean这个账号访问某个不是他own的account,demo中使用的是United Oil & Gas Corp. 我们使用UserRecordAccess来查看当前的用户对这条记录的访问权限发现他现在对这条记录没有read | edit权限,即当前这个community user访问community也看不到这条记录。
我们以这个contact login as community查看的效果如下,图中他能看到的account就只有他own的或者他的下属的account。
默认的navigation menu可能没有accounts,我们应该按照下方的步骤,在community builder中操作然后publish。
点击Add New Menu Item放在Sales 一级menu下按照图配置即可。
接下来通过sharing setting对group进行share,从而实现community manager可以看到industry为energy的数据。并且赋予的权限为read only。
重新运行以后可以看到这个community user对这条记录拥有了read 权限,但是没有edit权限。
总结:篇中主要介绍了partner community的启用,以及partner community的数据权限相关的内容,篇中有错误地方欢迎指出,有不懂的欢迎留言。
Community Cloud零基础学习(三)Partner Account的更多相关文章
- Salesforce Sales Cloud 零基础学习(三) Lead & Opportunity & Quote
上一篇讲的是Account 和 Contact,本篇主要描述 Lead & Opportunity & Quote.他们的主要的作用如下: Lead 用来存储潜在客户. Opportu ...
- Community Cloud零基础学习(五)Topic(主题)管理
我们以前讲过 Service Cloud 零基础(三)Knowledge浅谈,我们日常可以看见很多得文章或者帖子,我们可以将其通过data category / group进行管理.但是一个系统中得文 ...
- Salesforce Sales Cloud 零基础学习(二) Account 和 Contact
上一篇我们讲了Sales Cloud 中关于一个公司的产品和定价手册的概念,产品需要卖给企业客户(包括渠道伙伴以及合作伙伴等等)或者是个人客户,那客户信息存在哪里?针对企业客户,通过谁去串联起和企业客 ...
- Community Cloud零基础学习(一)启用以及简单配置
本篇参考: https://trailhead.salesforce.com/en/content/learn/trails/communities https://trailhead.salesfo ...
- Community Cloud零基础学习(四)Builder创建自定义的布局
前几篇讲了Community Cloud权限配置等信息,但是没有太讲过 Community如何进行配置layout,本篇主要描述使用Builder去进行符合需求的Community Layout的构建 ...
- Salesforce Sales Cloud 零基础学习(四) Chatter
Chatter是一个Salesforce实时协作应用程序,它允许你的用户一起工作.互相交谈和共享信息,不管用户角色或位置如何,连接.并激励用户在整个组织内高效工作. Chatter 让用户们在 Opp ...
- Service Cloud零基础学习(二)Entitlement & MileStone
https://trailhead.salesforce.com/content/learn/modules/entitlements 很少会有人不买东西,买的多了也很少没有人没有经历过售后流程.我们 ...
- salesforce lightning零基础学习(三) 表达式的!(绑定表达式)与 #(非绑定表达式)
在salesforce的classic中,我们使用{!expresion}在前台页面展示信息,在lightning中,上一篇我们也提及了,如果展示attribute的值,可以使用{!v.expresi ...
- Salesforce Sales Cloud 零基础学习(一) Product 和 Price Book
以前的博客大部分都是基于force.com以及lightning展开的自定义开发,其实salesforce提供了很多的标准的功能以及平台, Sales Cloud便是作为Salesforce核心的平台 ...
随机推荐
- 【rabbitmq】Queueingconsumer被废止后老代码如何做的解决方案
amqp-client 3.x之前的rabbitmq版本有个消费者的写法是借助于Queueingconsumer的: QueueingConsumer consumer = new QueueingC ...
- bootstrap上下左右条纹边框悬停表格的使用
懒得找地址:https://jingyan.baidu.com/album/0bc808fc3d88941bd585b94c.html?picindex=1
- 转linux top 命令
top 命令 每天一个linux命令(44):top命令 非常好的一篇博文,这位作者<每天一个linux命令>系列写的非常棒! 关于top的cpu使用率超过100% 在环境中会出现这种现象 ...
- KAZE特征和各向异性扩散滤波
kaze feature: http://www.doc88.com/p-6911376909693.html 各向异性扩散滤波 Scale-space and edge detection usi ...
- tomcat多实例配置
有一台server上跑个tomcat的实例的情况,我遇到过这种情况,毕竟把多个应用部署到一个实例中,如果某个应用出了问题,导致tomcat奔溃,其他应用也gg了.闲话到此. 通常部署多实例就是解压多个 ...
- Day6 - J - Cartesian Tree POJ - 2201
Let us consider a special type of a binary search tree, called a cartesian tree. Recall that a binar ...
- c# 外挂操作(内存操作)(内存读写取窗口句柄移动窗口取模块地址)工具类
来源于网上 参考 https://www.cnblogs.com/fuhua/p/5877781.html 等众多文章 详情取看我第二个例子封装功能较多 https://www.cnblogs.co ...
- url中?的作用
http://123.206.87.240:8002/get/?what=flag? 分隔实际的URL和参数 ,用于动态页面的交互和传参
- 吴裕雄--天生自然java开发常用类库学习笔记:排序及重复元素说明
import java.util.Set ; import java.util.HashSet ; class Person{ private String name ; private int ag ...
- redis学习(三)
一.Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 二.Redis 命令 1 ...