I recently try to create a sharing rules on a custom object in a scratch org.

Custom object: Foo__c

  • Field: only the default name field.

Foo Sharing Settings:

  • Default Internal Access: Private
  • Default External Access: Private

Foo Sharing Rules:

  • From: owned by members of AllInternalUsers public group
  • To: AllInternalUsers public group

When I create my scratch org and manually setup this configuration (or via org:push). The sharing rule is created in the UI, but adding Foo__c record will not add the Foo__Share record associated to the AllInternalUsers public group, preventing internal users to have access to the record.

Now, when I tried this setup in a developer org (not a scratch org), the Foo__Share record will be created.

Additional info:

// my org-def.json 


    "orgName": "SharingRulesTests",

    "edition": "Developer",

    "features": [ "ExternalSharing", "Communities" ],

    "settings": {

        "orgPreferenceSettings": {

            "networksEnabled": true



Am I missing an additional setting/feature or is it currently a know issue?



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.