Skip to main content

#Permissionset7 debatiendo

I have a flow that guides users through a manual lead conversion, when converting to an opportunity they are able to select the opportunity record type that they want to create.  However the flow will give them the option of every available opportunity record type, not just the ones they have permissions for.  Is there a declarative solution to this , to only show the ones they have permissions for, without using an apex class? 

 

#Flow  #Record Types  #Permissionset

1 respuesta
  1. 20 ago, 12:54

    Hi Carolyn - the catch is that RecordType is metadata every user can read, so a Get Records or Record Choice Set on RecordType always returns them all, regardless of who is assigned. There is no native 'filter record types by assignment' in Flow. Two routes that need no Apex you write or maintain: 

     

    1. UnofficialSF's 'User-Aware Record Type Picker for Flows' - a free installable screen component built for exactly this; it shows only the record types the running user is actually assigned. Cleanest option if you are OK installing a component. 

     

    2. Pure-native with Custom Permissions - create one Custom Permission per opportunity record type (or per group), assign each on the same permission set that grants that record type, then set each choice's component visibility (or a Decision) on the running user having that permission via Permission.YourCustomPermission. 100% declarative; the trade-off is you maintain the mapping, so it fits best when the record-type count is small. 

     

    Tip: also run the screen flow in User Mode so field/record access is enforced - just note User Mode will not filter the record-type list itself, since that is assignment, not record access. 

     

    If this helps, please mark it as the Best Answer so it helps the next person - thanks :)

0/9000

the error name is  We can't find that the ‘Manage Job Applications’ permission set grants read access and edit access to all Job Application fields, except edit access for Position and Candidate.  error in permission sets issems any way to clear this error? 

 

#Trailhead Challenges  #Trailhead  #Permissionset

3 respuestas
0/9000

Hello, 

 

I have a Flow Action on an Agentforce Service Agent that should be able to create Event records. The flow works in debug mode but when the agent tries to run the flow I get this error: 

 

an error occurred while your "Create Conference Event for Contact" flow was running.

Debug this flow in Flow Builder.

 

Error element Create_Event (FlowRecordCreate). 

This error occurred when the flow tried to create records: CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY: entity type cannot be inserted: Event. You can look up ExceptionCode values in the

SOAP API Developer Guide

 

I tried to give the agent access to events with a permission set, but there is no option in aa permission set to give Create access to the Event object. Only to change some it's field's access. I thought maybe then that you could do it from the Activity object in the permission set (since tasks and events stem from Activity) but this does not appear to be the case either.  I cannot see an Activities object at all in the Object Settings in a new permission set.

 

Please help if you have any idea how to make it possible for a Service Agent to have access to create Event records.  

 

Thank you! 

 

#Agentforce  #Permissionset

7 respuestas
  1. 20 sept 2025, 14:42

    this is a classic Salesforce "Event object permissions" gotcha.

    Here’s what’s happening and how to fix it:

    Why Debug Works but the Agent Fails

    • Debug mode runs as you (the Flow Builder), not the agent. 

      That’s why it works in debug, but fails when the agent runs it.

    • The error CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY: entity type cannot be inserted: Event means the user doesn’t have permission to create Events.

    Why You Don’t See "Event" in Permission Sets

    • Events (and Tasks) are controlled by the Activity object, but Salesforce doesn’t show "Activity" in Object Settings in permission sets.
    • Instead, Create/Read/Edit/Delete access for Events and Tasks is granted through Profiles or Record Types setup.

    How to Give Agents Event Create Access

    You have a few options:

    1. Profile Level (most common)

    1. Go to Setup → Profiles.
    2. Open the Service Agent’s Profile.
    3. Scroll to Standard Object Permissions.
    4. Find Activities → check Create, Read, Edit, Delete (or just Create if that’s all you need).

    2. Permission Set (if you don’t want to edit the profile)

    • In a Permission Set, you won’t see Activities in the "Object Settings" section.
    • Instead:
      1. Edit the Permission Set.
      2. Go to App Permissions.
      3. Under Salesforce CRM, find Activities and Calendar–related permissions (like "Edit Events", "Allow Events").
      4. Assign that permission set to your agents.

    3. Check Record Types & Page Layouts

    • Make sure the Event record type(s) are assigned to the agent’s profile/perm set.
    • If no Event record type is assigned, they won’t be able to create Events even with CRUD access.
0/9000

Ok...So I feel like this is somewhat an answer I should know considering I have been an Admin for over 10 years now. 

 

But..... 

 

Back in the day, when installing an app from the AppExchange, most of the time I would just install for all Profiles/users. In the last couple of years. It did depend, of course, flow components and some apps, I just installed for the System Admin Profile. So far, no problem with that model. 

 

Where I am getting stuck or a bit confused is around the new model of Permissions being driven by Permission Sets and not profiles.  So in the future, or even now, if I install an app, I still have to select a profile or profiles.  Even if I choose the "Specific Profiles" option the main System Admin Profile get's full access, even if the App does have Permission sets and so on.  

 

The Profile still get's access to the Visualforce pages, Classes, etc, even though we are supposed to move those permissions to a Permission Set(s).  It's confusing to me. 

 

So in this "new" model of Permission Sets, what is the role of Profiles when it comes to installing apps? Do you still just install for System Admin only? And if the app has Permission Sets use that for the rest of the users, etc?  I am just stuck on how installing Apps from the AppExchange fit in this new Permissions Model... 

 

#Nonprofit #Systems Administrator #Permissionset

7 respuestas
  1. 15 mar, 23:18

    The Current Best Practice

    Install for System Administrators only, then use Permission Sets (or Permission Set Groups) to grant access to other users. This is the right approach, and here's why:

    Why This Model Makes Sense

    1. Profiles are becoming baseline containers – They define the minimum floor of access (object CRUD, app visibility, page layouts, record types). The System Administrator profile remains special because Salesforce pushes critical updates to it (like the recent "Manage Connected Apps" permission).
    2. Permission Sets layer on top – All incremental access—including app-specific permissions, Apex classes, Visualforce pages, and custom permissions—should be granted via Permission Sets or Permission Set Groups.
    3. Admins still need Permission Sets sometimes – As Judi correctly noted, even after installing for Admins, some apps require you to assign their Permission Set(s) to actually use the app. This is intentional: the app may include custom permissions, connected app policies, or field-level security that aren't automatically granted just because you're a System Admin.

    What Happens During Installation

    When you install an AppExchange package and select "Install for Admins Only":

    • Profile-level grants (Apex classes, Visualforce pages, custom tabs) go to the System Administrator profile
    • The app's Permission Sets are created but not automatically assigned—you must assign them manually, even to yourself
    • Other profiles get nothing unless you explicitly choose them during install

    Recommended Pattern

    For System Administrators

    • Do not clone the standard "System Administrator" profile. Salesforce deploys critical updates only to the standard profile.
    • Create a custom Permission Set (e.g., "Acme System Administrator") to grant any additional permissions your admins need beyond the standard profile—new field access, integrations, etc.
    • Assign app-specific Permission Sets to admins when needed.

    For End Users

    • Install apps for Admins only.
    • After installation, assign the app's Permission Sets (or build Permission Set Groups) to the appropriate users based on role/function.
    • Use Permission Set Groups to bundle related permissions (app access + object permissions + field access) for easier assignment.

    Why Profiles Still Exist in the Install Flow

    Salesforce hasn't fully deprecated profiles—they're still the required baseline for every user. The install wizard asks for profiles because:

    • It needs to grant access to Apex classes, VF pages, and other package components
    • Not all packages include Permission Sets (especially older ones)
    • The System Administrator profile is the safest default for initial installation

    Over time, expect Salesforce to evolve this (possibly auto-creating Permission Sets during install or allowing install without profile selection), but for now, "Install for Admins Only" + Permission Sets is the cleanest, most future-proof approach.

    Bottom Line

    You're on the right track. The confusion is normal—Salesforce is mid-transition, and the install experience hasn't fully caught up to the permission set model. Stick with:

    ✅ Install for System Administrator profile only 

    ✅ Leave the standard System Administrator profile untouched 

    ✅ Use a custom "System Administrator" Permission Set for any add-on admin permissions 

    ✅ Assign app Permission Sets manually after install 

    ✅ Use Permission Set Groups to bundle access for end users

    This keeps your org clean, maintainable, and aligned with Salesforce's direction.

0/9000

When I tried to create a user Max Jackson, In the roles there is no license option of Salesforce , So I created the user under Salesforce option. While trying to add Max Jackson in Sales Processing assignment group. I got an error saying u cannot add this person. Then I started debugging the issue to know where it went wrong. Then I realized I assigned the wrong license. After digging much deeper I found out that we can assign only 2 users to salesforce license. Then I found which user is not in need for me and then I changed that user to another License and assigned Max Jackson to the salesforce license. Now I'm successfully able to add Max Jackson to the Sales Processing permission group. 

 

#Trailhead Challenges  #Permissionset

4 comentarios
  1. 15 mar, 16:08

    Thank you for solving this! This worked for me too. 

0/9000

Any thoughts, suggestions, on best practices around converting the System Admin Profile to Permission Sets? I just finished converting all of the regular users, 2 base profiles and a handful of Permission Sets and PSG's based on Persona's.  So all I have left if the System Admin and a QA role. So just trying to determine the "best" way to handle the System Admin. Multiple Permission Set's or just one overall? And what about all of the system permissions an Admin has? Do I really need all of those permissions? 

 

Any thoughts, tips, suggestions would be appreciated. 

 

#Salesforce Admin #Systems Administrator #Nonprofit #Permissionset

3 respuestas
  1. 10 mar, 12:08

    @Divs Chauhan I am assuming that I need to clone the existing System Admin Profile and create a new one, since the "base" one, you can't edit. Correct? And when installing apps from the app exchange, I am also assuming that I would hit the Selected Profiles and choose the new cloned System Admin? Correct?

0/9000

So a question for you that have moved permissions from Profiles to Permission sets, how did you handle Global Actions?  Since Global actions rely on the Global Publisher Layout and that is only by Profile, how did you handle situations where some users needed to see global actions and others did not? 

 

#Nonprofit #Salesforce Admin #Permissionset #Profiles

3 respuestas
  1. 2 mar, 14:34

    @Edward Elliott I am leaning toward a limited set of Profiles, to handle global and in a very specific use case, default record types. In most cases, as you mention Permission Sets, flows, etc can handle everything. But there are some use cases, at least for us, that mean I will need to look at having at least 2 if not 3 profiles, just for that. Still far less than what we have now.

0/9000

So I am moving permissions from profiles to permission sets and I have run into a weird issue, specifically with the Manage Household button on the account object. I am currently testing features for my funding team in Test and when I moved a user to the new profile and Permission Sets, when I click on the Manage Household button on the Account object, it's now just bringing up the regular "Edit" record pop up instead of the Manage Household custom visualforce page. And I can't determine why. To prevent any issues in the "Base" permission set I created, I gave everyone the same visualforce page accesses as what was on the profiles prior. Is there some hidden permission I missed? 

 

Here is what it looks like for the user in Production, it looks and functions as it should.

NPSP Manage Household button Not Working - Permission Set

 

Here is what it looks like in test.

Manage Household Issue 2.png

 

Any ideas?

@Judi Sohn @Michael Kolodner

 

 

#Nonprofit Success Pack #Nonprofit #Salesforce Admin #Permissionset

7 respuestas
0/9000

So, I am working on migrating from Profiles to Permission Sets and Permission Set Groups, along with using Muting Permissions.  Each Permission Set Group is based on a persona and for a few of the persona's, I have more or less the same muting permissions.  So is there a way, that I can pull information from a muting permission, to show for a specific object, for example, the Account objects, what fields have been muted with Read or Edit mutes? 

 

What I am trying to get is a list of all fields for each object where specific fields the read and edit access has been muted.  I am trying to get this via an SOQL query using Salesforce Inspector.  So can this be done? And if so, how?  I asked AI and the answer was way wrong.... 

 

#Nonprofit #Salesforce Admin #Permissionset

2 respuestas
  1. 11 feb, 02:33

    @Heath Parks Yes, you should be able to do that. You can get the ID of the MutingPermissionSet using the Tooling API (ensure Tooling API is checked in Salesforce Inspector):

    SELECT Id FROM MutingPermissionSet WHERE DeveloperName = 'My_Muting_Permission_Set'

    Then use that ID to query FieldPermissions for that MutingPermissionSet (uncheck Tooling API for this):

    SELECT SObjectType, Field, PermissionsRead, PermissionsEdit

    FROM FieldPermissions

    WHERE ParentId = '0QM000000000000AAA'

    To filter to just the Account object, you can filter on SObjectType:

    SELECT SobjectType, Field, PermissionsRead, PermissionsEdit

    FROM FieldPermissions

    WHERE ParentId = '0QM000000000000AAA'

    AND SObjectType = 'Account'

0/9000

I am working on migrating permissions from the Profiles to Permission sets and I am running into an issue, specific to managed apps that have their own custom permission sets.  When you add a new field to a managed Object, in our case "change_machine_taxes", I can't add that new field to the managed packages Permission Set.  You can't do it for any managed package. 

 

So my question is, how should this be handled with SF move to Permission Sets.  Do I have to create a brand new Custom Permission Set and include the objects of the managed package and give new Read, Edit, and so on for the object and then add the new field to that custom permission set?  If so, doesn't that cause a conflict?  As I have 2 permission sets that have duplicate permissions? 

 

#Nonprofit #Salesforce Admin #Permissionset

8 respuestas
  1. 14 ene, 18:02

    FWIW @Kymberli Feng's Option B is my choice as well. Custom Permission Set that is only the custom/unmanaged that you've added, even if it's just checking "Read/Edit" on a single field. You don't have to do anything with object permissions, since the managed PS will cover. User would be assigned a Group that contains both the managed and custom permission set. I've gotten bitten by cloning too. 

0/9000