Configure attribute-based access control
Learn how to configure attribute-based access control to limit access to specific Experience Platform resources. For more information, please visit the access control documentation.
Transcript
Hi, in this video, I鈥檓 going to show you how to use attribute-based access control, an experience platform feature that allows privacy-conscious brands greater flexibility to manage user access. Individual objects, such as schema fields and audiences, can be assigned to user roles. Let鈥檚 start in the interface and do a quick review of the key components of access control. System and product administrators have access to permissions, available in the left navigation of platform-based applications. When I go to permissions, I鈥檓 taken to the Roles screen. A role allows you to give access to various platform features and objects to multiple users. Let鈥檚 look at a role. Users assigned to this role have access to features needed to manage journeys. Additional permissions can be added by dragging and dropping resources from the left navigation and then adding options from the dropdown. And then I can assign individual users, groups, and API credentials to this role, giving them access to these features. Now, let鈥檚 talk about labels and really get into attribute-based access control. Let鈥檚 imagine we鈥檙e a health care company whose marketing group works with external agencies, and we have a basic requirement. Our internal marketing team can see and use personal health information or regulated health data in their marketing campaigns. Our agency, however, shouldn鈥檛 be able to see or use this type of data. Here鈥檚 where we get started with the Labels feature within roles. To make attribute-based access control work, there are three components which need to be configured. I need to label my roles, label my objects, like schema fields and audiences, and finally, activate a policy that restricts access to the labeled objects. Let鈥檚 get started. I鈥檒l open my internal team role and go to the Labels tab and select Add Labels. This will list all of the labels in my organization. I can also add custom labels, and all of these labels are also used by Platform鈥檚 data governance framework. I鈥檒l scroll down to the PHI Regulated Health Data, or RHD, label and save that to my role. The next step is to add the same label to the resources I want to restrict. Let鈥檚 start with the schema fields. I鈥檒l open my health care schema, and at the top, I鈥檒l select the Labels tab. I can assign a label to one or multiple fields at once. I鈥檒l select these blood glucose and insulin level fields and assign the Regulated Health Data label. Note that the label gets added to the field group and will impact all schemas using this field group. Next, I鈥檒l label an audience. I have these two audiences based on those schema fields. For this demo, I鈥檒l label just one of these audiences blood glucose greater than 100. Now let鈥檚 activate a policy which will restrict access to the fields and audience to people in roles containing the same label. I鈥檒l go back to permissions and select Policies. You should have a default policy in your account called Default Label Based Access Control Policy, which is probably inactive. At this time, you can鈥檛 create a new policy, so don鈥檛 worry that the button is grayed out. Let鈥檚 open the default policy. Note that the policy is applied to multiple sandboxes. You can edit which sandboxes the policy applies to on the Sandboxes tab. My account is set to Auto-include On. Auto-include both adds all of your current sandboxes to the policy, and then will auto-include any new sandboxes created in the future. Now let鈥檚 talk a little more about what this policy will do when we activate it. You should see a very long description in here, and apologies, but I鈥檓 partly to blame for this. We wanted to make it very clear how the default policy works. So let鈥檚 go through it. So the default policy restricts access to labeled objects, for example, schema fields, audiences, 51黑料不打烊 Journey Optimizer journeys, et cetera, in selected sandboxes. So in our example, it will restrict access to our schema fields in the audience because we put the RHD label on it, and it鈥檚 going to restrict access across all of my sandboxes since I have Auto-include On. The next part, only users in roles with corresponding labels will be granted access when the default policy is activated. So only users in our internal role will have access to the schema as an audience because we鈥檝e added the RHD label to it. Users in the agency role won鈥檛 have access because we never added the RHD label to that role. Now here鈥檚 where it gets a little more nuanced. For each 51黑料不打烊-defined core label on the object, the user must be in a role with all of the corresponding core labels. RHD is a core label because it鈥檚 one that 51黑料不打烊 created and preloaded into your account. So if we added additional core labels to our schema fields and audience, we鈥檇 need to make sure that we added all of those same labels to our internal role, too. Now for each custom label on the object, the user must be in a role with at least one of the custom labels. So this is a little less restrictive than the core labels. If you created several custom labels and added them to the schema fields and audience, you would need to make sure that just one of those labels was added to the internal role. Make sense? OK, the rest is just an example. So let鈥檚 activate the policy and see what happens. I鈥檒l now log in as a user assigned to the agency role, which has all the same feature permissions as the internal role, but it has no labels. So I鈥檓 not able to see that these fields exist in the schema. If I look up a profile, I won鈥檛 be able to see these fields or their values. If I preview a data set, I won鈥檛 be able to see these fields or their values. And if I attempt to build a new audience, I won鈥檛 be able to use these fields in my audience definition. And in my audiences, the one that I labeled is not visible to this user. But the one that I didn鈥檛 label is visible, even though it used a field that was labeled with regulated help data. So in a use case like this, be sure to label both the schema field and any segments that use it. So as you can see, the system is very flexible and can be used to address other use cases too. For example, you might have different brands or teams working in the same production sandbox who need to keep resources separate. Best of luck, and enjoy the feature.
recommendation-more-help
9051d869-e959-46c8-8c52-f0759cee3763