DocuSign eSignature für Salesforce 7.0 – Fehler für benutzerdefinierte Schaltfläche – Seite erfordert ein CSRF-Bestätigungstoken; neues Schaltflächen-Codeformat

Ab DocuSign eSignature für Salesforce 7.0 gibt es bei Seiten-Callout oder dem Wert window.location.href für benutzerdefinierte Schaltflächen eine neue Anforderung. Durch die Änderung wird aktuellen Salesforce-Sicherheits-Updates entsprochen.

Wenn Sie die Formate der benutzerdefinierten Schaltflächen nicht ändern, wird Ihnen die folgende Fehlermeldung angezeigt:

Fehler bei der benutzerdefinierten Schaltfläche

Der aufgerufene Link ist ungültig. Für die Seite ist ein CSRF-Bestätigungstoken erforderlich. Wenden Sie sich an den Salesforce-Administrator. (The link you followed isn’t valid. This page requires a CSRF confirmation token. Report this error to your Salesforce administrator.)

Die neue Salesforce-Sicherheitsanforderung bietet eine zusätzliche Sicherheitsebene für die Visualforce-Seite, die CSRF-Angriffe (CSRF = Cross-Site Request Forgery) verhindern soll.

Lösung

Damit die aktuellen Salesforce-Sicherheits-Updates unterstützt werden, MÜSSEN die Formate der benutzerdefinierten Schaltflächen auf das Format URLFOR aktualisiert werden.

***Benutzer mit der Version 6.9 können URLFOR auch in dieser Umgebung testen, bevor Sie zur Version 7.0 wechseln.***

Beispiel für einen Schaltflächenwechsel:


Beispiel für Classic-Javascript:


{!REQUIRESCRIPT("/apex/dsfs__DocuSign_JavaScript")} //********* Option Declarations (Do not modify )*********// var RC = '';var RSL='';var RSRO='';var RROS='';var CCRM='';var CCTM='';var CCNM='';var CRCL='';var OCO='';var DST='';var LA='';var CEM='';var CES='';var STB='';var SSB='';var SES='';var SEM='';var SRS='';var SCS ='';var RES=''; //*************************************************// OCO = 'Tag'; DST = 'a2e2cd02-f11e-4c8c-a830-c9f2b6564a9e'; LA = '0'; LF = '0'; CCRM = 'Decision Maker~Signer 1'; CCTM = 'Decision Maker~Signer'; //********* Page Callout (Do not modify) *********// window.location.href = "/apex/dsfs__DocuSign_CreateEnvelope?DSEID=0&SourceID={!Opportunity.Id}&RC="+RC+"&RSL="+RSL+"&RSRO="+RSRO+"&RROS="+RROS+"&CCRM="+CCRM+"&CCTM="+CCTM+"&CRCL="+CRCL+"&OCO="+OCO+"&DST="+DST+"&CCNM="+CCNM+"&LA="+LA+"&CEM="+CEM+"&CES="+CES+"&SRS="+SRS+"&STB="+STB+"&SSB="+SSB+"&SES="+SES+"&SEM="+SEM+"&SRS="+SRS+"&SCS="+SCS+"&RES="+RES; //*******************************************//


URL-Format für Lightning (bis Version 6.9 unterstützt):
Hinweis: Inhaltsquelle auf URL einstellen

/apex/dsfs__DocuSign_CreateEnvelope?DSEID=0 &SourceID={!Opportunity.Id} &DST=a2e2cd02-f11e-4c8c-a830-c9f2b6564a9e &CCRM=Decision+Maker~Signer+1 &CCTM=Decision+Maker~Signer &LA=0 &LF=0 &OCO=Tag


URLFOR-Format (erforderlich ab Version 7.0):
Hinweis: Inhaltsquelle auf URL einstellen

{!URLFOR('/apex/dsfs__DocuSign_CreateEnvelope', null, [ SourceID = Opportunity.Id, CCRM = 'Decision Maker~Signer 1', CCTM = 'Decision Maker~Signer', DST = 'a2e2cd02-f11e-4c8c-a830-c9f2b6564a9e', LA = '0', LF = '0', OCO = 'Tag' ] )}

Seiten-Callout-Abschnitt für JavaScript-Schaltfläche aktualisieren (für Classic-Schaltflächen ab Version 7.0)

Wenn Sie Ihr bestehendes JavaScript-Schaltflächenformat beibehalten möchten, können Sie als Alternative zum URLFOR-Fomat einfach den Seiten-Callout-Abschnitt ändern und den benutzerdefinierten Code erhalten.

  • Kopieren Sie unten den Abschnitt „Seiten-Callout“. Ersetzen Sie mit dem Abschnitt das bestehende Seiten-Callout (Variable window.location.href).
  • Das Beispiel ist zum Senden einer Opportunity. Für andere Objekte ändern Sie für das jeweilige Objekt Opportunity.Id.
  • Damit auch jede Variable berücksichtigt wird, benötigen Sie den Abschnitt „Option Declaration“.


Hinweis: Die Änderungen im Vergleich zum vorherigen Standard-Seiten-Callout sind farblich hervorgehoben:
 


//********* Option Declarations (Do not modify )*********//  var RC = '';var RSL='';var RSRO='';var RROS='';var CCRM='';var CCTM='';var CCNM='';var CRCL=''; var CRL='';var OCO='';var DST='';var LA='';var LF='';var CEM='';var CES='';var STB='';var SSB='';var SES='';var SEM='';var SRS='';var SCS ='';var RES=''; //*************************************************//  //custom code goes here//  //********* Page Callout (Do not modify) *********//  window.location.href = '{!URLFOR('/apex/dsfs__DocuSign_CreateEnvelope',null,[SourceID=Opportunity.Id])}&RC='+RC+'&RSL='+RSL+'&RSRO='+RSRO+'&RROS='+RROS+'&CCRM='+CCRM+'&CCTM='+CCTM+'&CRCL='+CRCL+'&CRL='+CRL+'&OCO='+OCO+'&DST='+DST+'&CCNM='+CCNM+'&LA='+LA+'&LF='+LF+'&CEM='+CEM+'&CES='+CES+'&SRS='+SRS+'&STB='+STB+'&SSB='+SSB+'&SES='+SES+'&SEM='+SEM+'&SRS='+SRS+'&SCS='+SCS+'&RES='+RES;  //*******************************************//