מה עושים בשיעור הזה
יש לנו CRM שעובד בענן. עכשיו הגיע הזמן להפוך אותו למשהו שלא מתביישים לשלוח ללקוח. שני דברים היום:
- דומיין משלכם. נפרדים מכתובת ה-
workers.devהארוכה (והמכוערת, בואו נודה בזה) ומחברים את האתר לדומיין אמיתי. - התחברות עם משתמש וסיסמה. כרגע כל מי שיש לו את הקישור רואה הכל. המידע העסקי שלכם לא אמור להיות פתוח לכל העולם.
בסוף השיעור תהיו ב-67% מהקורס, עם אפליקציה מאובטחת שיושבת על דומיין עסקי.
קונים דומיין ב-Cloudflare ומחברים אותו
הדרך הכי פשוטה היא לקנות את הדומיין ישירות ב-Cloudflare ולחבר אותו ל-Worker:
- ב-Dashboard נכנסים ל-Workers & Pages ופותחים את ה-Worker של האפליקציה (
simple-crm). - עוברים לטאב Domains. כרגע יש שם רק את הסאב-דומיין החינמי.
- לוחצים Add domain ואז Purchase domain.
- מחפשים שם פנוי שמתאים לכם. בשיעור אני קניתי את
graphs.winsב-18$. - משלימים הרשמה ותשלום. אחרי כמה דקות מגיע מייל שהדומיין נרשם.
- חוזרים ל-Domains ב-Worker, שוב Add domain, בוחרים את הדומיין החדש, מסמנים Production ולוחצים Add domain.
- מחכים בערך 20 שניות, מרעננים ונכנסים לכתובת החדשה. האתר עובד על הדומיין שלכם.
עצה אחת שיכולה לחסוך לכם כסף: ספקי דומיינים, כולל Cloudflare, שמים לב כשמחפשים את אותו שם שוב ושוב, ואחרי 2-3 חיפושים המחיר יכול לקפוץ. מצאתם שם טוב במחיר סביר? תקנו. אל תחזרו מחר “רק לבדוק עוד פעם”.
כבר יש לכם דומיין אצל ספק אחר? (Name Servers)
אם קניתם דומיין בעבר אצל GoDaddy או אצל כל רשם אחר, לא צריך לקנות חדש. צריך רק להפנות אותו ל-Cloudflare.
קצת מושגים: החברה שממנה קונים דומיין נקראת Registrar (רשם). כדי שהדומיין יוביל לאפליקציה שיושבת ב-Cloudflare, מפנים אותו לשרתי ה-DNS של Cloudflare.
- במסך הראשי של Cloudflare נכנסים ל-Domains, לוחצים Add domain ואז Connect a domain.
- כותבים את שם הדומיין. Cloudflare סורקת אותו ונותנת לכם שתי כתובות של Name Servers (משהו כמו
ns.cloudflare.com). - נכנסים לחשבון אצל הספק החיצוני, מוצאים את DNS Management ומדביקים שם את שתי הכתובות.
ועכשיו החלק שאף אחד לא אוהב: לחכות. עדכון DNS ברחבי הרשת (Propagation) לא קורה מיד. לפעמים זה כמה דקות, לפעמים כמה שעות, ויש מקרים שזה לוקח 24-48 שעות. אם האתר לא עולה מיד, אל תיבהלו ואל תתחילו לשנות הגדרות. כנראה שזה פשוט עוד לא התעדכן.
סיסמה למערכת: Authentication ו-Admin Mode
קובץ אקסל עסקי מלא בנתונים ובלוגיקה שלא נועדו לעיניים זרות. אז צריך מנגנון הזדהות (Authentication & Authorization): מי אתה, ומה מותר לך לראות.
יש רק בעיה קטנה. מערכות התחברות רגילות שולחות מיילים (לאיפוס סיסמה, לאישור הרשמה), ולנו עדיין אין שירות שליחת מיילים. הפתרון הוא Admin Mode: רק בעל המערכת, לפי כתובת המייל שלו, נכנס כמנהל, יוצר משתמשים חדשים וקובע להם סיסמאות. פשוט ועובד.
נכנסים ל-Claude Code בתיקיית CRM ומדביקים את הפרומפט (עם המייל שלכם במקום הדוגמה):
“please implement authentication and pass protection for the website using a login system. since I currently don’t have email sending capabilities, please create an admin mode where I can log in with my email ([[email protected]]) to create new accounts and reset passwords”
Deploy והגדרת סיסמת המנהל
קלוד יבנה את מערכת ההתחברות קודם אצלכם במחשב (localhost:3000). כשזה מוכן, מבקשים ממנו להעלות לענן: “please deploy it”.
ופה יש פרט שאני מאוד אוהב: Claude לא קובע את סיסמת המנהל בעצמו. מטעמי אבטחה הוא משאיר את זה לכם, וככה זה צריך להיות.
- קלוד יפתח טרמינל פנימי ויריץ
npm run admin-password-remote(או שתלחצו בעצמכם על כפתור ה-Play ליד הפקודה). - הטרמינל יבקש להקליד את הסיסמה פעמיים.
- שני דברים שכדאי לדעת מראש:
- בזמן ההקלדה לא רואים כלום על המסך. לא כוכביות, לא נקודות, כלום. זה בכוונה, מטעמי אבטחה. פשוט מקלידים ולוחצים Enter.
- הסיסמה צריכה להיות לפחות 8 תווים. אם הקלדתם סיסמה קצרה מדי וזה נכשל, לוחצים על החץ למעלה (
↑), הפקודה האחרונה חוזרת, ומריצים אותה שוב עם סיסמה ארוכה יותר.
אחר כך פותחים חלון חדש (עדיף חלון אנונימי, Incognito) ונכנסים לדומיין. במקום ה-CRM מחכה לכם מסך התחברות שמבקש מייל וסיסמה. בדיוק מה שרצינו.
ניהול משתמשים, ומה קורה ב-D1
אחרי שנכנסים עם פרטי המנהל מופיעה לשונית חדשה: Admin. משם מוסיפים משתמשים, מעדכנים פרטים ומאפסים סיסמאות, הכל מהממשק.
ואם תציצו ב-Cloudflare, ב-D1 Database ואז Explore data, תראו שתי טבלאות חדשות:
users- המיילים של המשתמשים וה-Hash של הסיסמאות (כלומר, הסיסמה בגרסה מוצפנת).sessions- מי מחובר כרגע.
וכאן אני חייב להיות חד: אל תערכו סיסמאות ישירות בטבלה ב-D1. מה שיושב שם הוא Hash ולא הסיסמה עצמה. תשנו אותו ידנית, והמשתמש פשוט לא יצליח להתחבר. שינוי סיסמה עושים רק דרך האפליקציה או דרך הטרמינל.
לסיום
מה שבנינו עם Admin Mode יציב ומתאים להרבה מאוד מקרים. אם יום אחד תבנו אפליקציה לארגון גדול באמת, שווה לבדוק שירותי הזדהות ייעודיים כמו Auth0.
אז מה היה לנו? חיברנו דומיין אישי, למדנו איך מפנים דומיין מספק חיצוני, והוספנו מערכת התחברות עם ניהול משתמשים. 67% מהקורס מאחורינו, ויש לכם אפליקציית ווב מקצועית ומוגנת שנבנתה כולה מקובץ אקסל. לא רע בכלל.
צור קשר בוואטסאפ