ERROR running force:org:create: Error authenticating with JWT config due to: invalid assertion

ליאור נכתב על ידי ליאור לביא, עודכן בתאריך 31/10/2022

הודעת השגיאה

ERROR running force:org:create: Error authenticating with JWT config due to: invalid assertion

למה אנחנו רואים את הודעת השגיאה הזאת?

לעיתים כשננסה ליצור Scratch org חדש באמצעות הפקודה sfdx force:org:create נתקל בהודעת השגיאה Error authenticating with JWT config due to: invalid assertion.

הסיבה לתקלה זאת היא ניסיון של Salesforce CLI להתחבר לסביבת ה-DevHub שלנו באמצעות תקן JWT, במקום אימות באמצעות Web Login, כדי ליצור את ה-Scratch org שלנו. מצב כזה יכול לקרות אם הפרויקט שלנו הכיל בשלב כל שהוא מפתח SSL (קובץ בסיומת .key) ששימש אותנו לחיבור לסביבת ה-DevHub שלנו, לדוגמה ב-Pipeline של Azure DevOps או כלי אוטומציה אחר, ומחקנו את המפתח לאחר מכן.

פתרון

כדי לפתור את הודעת השגיאה הזאת, עלינו לבצע Logout מסביבת ה-DevHub שלנו ואז להתחבר אליה מחדש באמצעות Web Login.

הודעת השגיאה

sfdx force:org:create -s -f config/project-scratch-def.json -a MyScratchOrgAlias -u MyDevHubAlias
ERROR running force:org:create: Error authenticating with JWT config due to: invalid assertion
invalid assertion
invalid assertion
invalid assertion
invalid assertion

ביצוע Logout

sfdx force:auth:logout -u MyDevHubAlias
Are you sure you want to log out from these org(s)? MyEmail@MyCompany.co.il
Important: You need a password to reauthorize scratch orgs. By default, scratch orgs have no password. If you still need your scratch orgs, run "sfdx force:user:password:generate" before logging out. If you don't need the scratch orgs anymore, run "sfdx force:org:delete" instead of logging out.
Log out (y/n)?: y
Successfully logged out of orgs: MyEmail@MyCompany.co.il

חיבור מחדש והגדרת הסביבה כ-DevHub ברירת המחדל שלנו

sfdx auth:web:login -a MyDevHub -d
Successfully authorized MyEmail@MyCompany.co.il with org ID 00D***

יצירת Scratch org חדש בהצלחה

sfdx force:org:create -s -f config/project-scratch-def.json -a CS4231 -u ProductsProduction
Successfully created scratch org: 00D***, username: test-random@example.com

זה הכול. כעת Salesforce CLI יוכל להתחבר בהצלחה לסביבת ה-DevHub שלנו על מנת ליצור עבורנו Scratch org חדשים ללא הודעת שגיאה.