Använd Visualforce e-postmallar med gästanvändare
Skydda åtkomsten till ditt företags data när du skickar e-postmeddelanden som använder Visualforce Classic-e-postmallar till gästanvändare. Dessa mallar kan användas med anrop från Processbyggaren, Arbetsflödesbyggaren och Apex.
Versioner som krävs
| Tillgängliga i: Salesforce Classic och Lightning Experience |
| Tillgängliga i: Essentials, Enterprise, Performance, Unlimited och Developer Editions |
I utgåvan Spring ’20 introducerade Salesforce en säkerhetspolicy som påverkar Visualforces e-postmallar som används för e-postmeddelanden som skickas till gästanvändare i Experience Cloud-webbplatser.
E-postmeddelanden som använder Visualforces e-postmallar skickar information baserat på en användares åtkomst till Salesforce-data. Men eftersom dataåtkomst för gästanvändare är begränsad i Salesforce fungerar inte mallarna efter att du har tillämpat säkerhetsändringen.
Dataåtkomst delas in i två huvudkategorier, eller sammanhang.
- Systemsammanhang—En användares behörigheter ignoreras och begäran körs oavsett behörigheter. Dessa behörigheter kan inkludera nyckelorden med delning, utan delning och ärvd delning.
Om en Visualforce e-postmall begärs från en funktion som körs i systemsammanhang utan delning återges e-postmeddelandet i systemsammanhang.
- Användarsammanhang—Alla användarens behörigheter och åtkomstinställningar följs.
Om en Visualforce e-postmall skickas från något annat sammanhang återges e-postmeddelandet i användarsammanhang.
Mer information om sammanhanget finns i Apex Developer Guide.
För att säkerställa att en Visualforce e-postmall körs i systemsammanhang och är synlig för gästanvändare, lägg till attributet renderUsingSystemContextWithoutSharing="True" i taggen emailTemplate. Att ange renderUsingSystemContextWithoutSharing="True" åsidosätter inte befintliga säkerhetsinställningar för synlighet för e-postobjekt. Till exempel, för att låta en partnerwebbplatsmedlem se användarobjekt från en kundwebbplats, lägg till partnerwebbplatsmedlemmen på kundwebbplatsen och ange renderUsingSystemContextWithoutSharing="True".
renderUsingSystemContextWithoutSharing="True" körs e-postmallen i systemläge, vilket kringgår användarbehörigheter, fältnivåsäkerhet och organisationsomfattande standarder. Var försiktig när du använder denna inställning så att du inte oavsiktligen exponerar känsliga data. Innan du använder denna inställning, utvärdera påverkan av gästsäkerhetspolicyn och uppdatera vid behov e-postmallarna för Visualforce istället.
Om säkerhetspolicyn ändrade en gästanvändares åtkomst till e-postmallar, uppdatera mallens sammanhang där en gästanvändare kan skapa ett e-postmeddelande.
- När du använder Apex meddelandeklass, se till att din Apex klass har nyckelordet utan delning i definitionen. Detta nyckelord krävs när du skickar ett e-postmeddelande direkt eller från en Apex utlösare.
- När du använder ett flöde, se till att du åberopar det från en Apex klass som har nyckelordet utan delning, eller från Processbyggaren.
Inga uppdateringar behövs om en av dessa funktioner används för att utlösa ett e-postmeddelande för en gästanvändare:
- Processbyggaren
- Arbetsflöden
