הגדרת מחברים לחשבון

במאמר הזה מוסבר איך להשתמש באפשרויות המתקדמות להגדרת מחברים של חשבונות Developer Connect.

מחבר חשבונות הוא תכונה של Developer Connect שעוזרת לקשר את חשבון Google Cloud לחשבון האישי שלכם אצל ספק של כלי פיתוח שאינו Google. המשתמשים יכולים לציין את סוג הנתונים שאליהם מחבר החשבונות יוכל לגשת על ידי בחירת ההיקפים המתאימים למחבר הזה. אחרי שיוצרים חיבור של מחבר חשבונות לארגון, משתמשים בארגון יכולים להשתמש בחיבור הזה כדי לאשר שימוש בחשבונות האישיים שלהם עם החיבור הזה.

אפשר להגדיר מחבר חשבונות באמצעות לקוח OAuth שהוגדר מראש ב-Developer Connect (לדוגמה, GitHub או GitLab), או להשתמש בלקוח OAuth מותאם אישית משלכם (לדוגמה, מופע GitHub Enterprise מקומי).

לפני שמתחילים

  1. נכנסים לחשבון Google.

    אם עדיין אין חשבון, יוצרים חשבון חדש.

  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. הפעלת Developer Connect מפעילה גם את Secret Manager API.

  9. אופציונלי: יוצרים מפתח הצפנה בניהול הלקוח (CMEK) להצפנת סודות האימות שנוצרים על ידי Developer Connect.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות ליצירת מחבר חשבון, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין של OAuth ב-Developer Connect (roles/developerconnect.oauthAdmin) בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירת מחבר חשבונות באמצעות ספקים זמינים

בשלבים הבאים מוסבר איך ליצור מחבר חשבונות לספקים המובנים. אם רוצים ליצור מחבר חשבונות ולציין לקוח OAuth בהתאמה אישית, אפשר לעיין במאמר בנושא יצירת מחבר חשבונות באמצעות לקוח OAuth בהתאמה אישית.

מסוף Google Cloud

  1. פותחים את Developer Connect במסוף Google Cloud .

    כניסה אל Developer Connect

  2. בוחרים באפשרות Account connectors (מחברים לחשבון).

  3. לוחצים על יצירת מחבר.

  4. בוחרים את האזור שבו רוצים ליצור את מחבר החשבון הזה.

  5. נותנים למחבר החשבון שם.

  6. בקטע סוג ההגדרה בוחרים באפשרות לקוחות OAuth שהוגדרו מראש.

  7. בוחרים את ספק ה-OAuth.

  8. בוחרים אם להפעיל את הפרוקסי של Developer Connect.

    כשהפרוקסי מופעל, Developer Connect שולח פקודות Git או מבצע קריאות HTTP (או שניהם) לספק בשמכם. מידע נוסף

  9. בוחרים את ההיקפים שיוקצו ל-Developer Connect עבור מחבר החשבון הזה.

    היקפי ההרשאות קובעים אילו פעולות יכולה Developer Connect לבצע בשירות של הספק שנבחר. היקפי ההרשאות משתנים בהתאם לספק. צריך לבחור לפחות היקף הרשאות אחד, אלא אם לספק אין היקפי הרשאות.

    יכול להיות שלא יהיו היקפי הרשאות זמינים לבחירה, בהתאם לספק. יכול להיות שתוכלו להוסיף אותם באופן ידני. יכול להיות גם שנדרשים היקפי הרשאות.

  10. לוחצים על יצירה כדי לסיים את יצירת מחבר החשבון הזה.

Google Cloud CLI

כדי ליצור מחבר חשבונות, מריצים את הפקודה הבאה:

   gcloud alpha developer-connect account-connectors create my-ac \
       --location=LOCATION \
       --provider-oauth-config-system-id=PROVIDER \
       --provider-oauth-config-scopes=SCOPES \
       --project=PROJECT_ID

בפקודה הזו, מחליפים את מה שכתוב בשדות הבאים:

  • LOCATION באזור שבו אתם יוצרים את מחבר החשבון הזה.

  • PROVIDER עם ספק ה-SCM שאליו אתם מתחברים:

    GITHUB,‏ GITLAB או BITBUCKET_CLOUD.

  • PROJECT_ID במזהה הפרויקט (ולא במספר הפרויקט) של הפרויקט שבו אתם יוצרים את מחבר החשבון הזה.

יצירת מחבר חשבונות באמצעות לקוח OAuth מותאם אישית

בשלבים הבאים מוסבר איך להגדיר מחבר חשבונות לשימוש בלקוח OAuth שאתם מציינים. אם רוצים ליצור מחבר חשבונות באמצעות הספקים המובנים, אפשר לעיין במאמר יצירת מחבר חשבונות באמצעות ספקים זמינים.

מסוף Google Cloud

  1. פותחים את Developer Connect במסוף Google Cloud .

    כניסה אל Developer Connect

  2. בוחרים באפשרות Account connectors (מחברים לחשבון).

  3. לוחצים על יצירת מחבר.

  4. בוחרים את האזור שבו רוצים ליצור את מחבר החשבון הזה.

  5. נותנים למחבר החשבון שם.

  6. בשדה סוג ההגדרה בוחרים באפשרות לקוח OAuth בהתאמה אישית.

    במסך Create account connector מוצג URI להפניה אוטומטית.

  7. מעתיקים את ה-URI של ההפניה האוטומטית.

    ה-URI יהיה בפורמט הבא:

    https://developerconnect.google.com/redirect/custom/projects/<project_number>/locations/<location>/accountConnectors/<account_connector_id>

    ב-URI הזה, <project_number> הוא מספר הפרויקט, ולא מזהה הפרויקט.

  8. יוצרים את האפליקציה בהתאמה אישית עבור מערכת ה-SCM שבחרתם, באמצעות כתובת ה-URI להפניה אוטומטית שהעתקתם, ואז חוזרים לטופס הזה כדי לספק את הפרטים של לקוח ה-OAuth:

    1. בוחרים את הספק.

    2. בשדה מארח URI, מציינים את ה-URI של מערכת ניהול קוד המקור.

    3. מזינים את הכתובת של שרת ההרשאות בשדה Authorization URI (כתובת ה-URI של ההרשאה). הכתובת הזו מופיעה בפורמט הבא:

      ‫GitHub Enterprise: ‏ https://<host_name>/login/oauth/authorize ‫GitLab Enterprise: ‏ https://<host_name>/oauth/authorize ‫BitBucket Data Center: ‏ https://<host_name>/rest/oauth2/latest/authorize

    4. בשדה Token URI, מציינים את ה-URI שבו רוצים להשתמש כדי להחליף קוד הרשאה באסימון גישה. הכתובת הזו מופיעה בפורמט הבא:

      ‫GitHub Enterprise: ‏ https://<host_name>/login/oauth/access_token ‫GitLab Enterprise: ‏ https://<host_name>/oauth/access_token ‫BitBucket Data Center: ‏ https://<host_name>/rest/oauth2/latest/token

    5. בשדה מזהה לקוח, מציינים את מזהה הלקוח של אפליקציית ה-OAuth.

    6. מזינים את סוד הלקוח כדי לאמת את האפליקציה בשרת ההרשאות.

    7. אם מחבר החשבון ישתמש ב-proxy של Developer Connect כדי להנפיק פקודות Git, בוחרים באפשרות הפעלת ה-proxy של Developer Connect.

    8. בקטע היקפים, בוחרים מתוך רשימת ההיקפים הזמינים.

    9. אפשר להגדיר רשתות ואבטחה:

      1. בוחרים אם מחבר החשבון הזה ישתמש באינטרנט הציבורי או ברשת פרטית.

        אם מדובר ברשת פרטית, צריך לספק את הפרטים הבאים:

        • אישור ה-CA לשימוש

        • המידע על שירות מדריך השירותים:

        אפשר לזהות את הפרויקט של שירות Service Directory, או לציין את האזור, מרחב השמות ושם השירות.

      2. מפעילים או משביתים את PKCE לאפליקציה הזו.

        שירות ה-OAuth צריך לתמוך ב-PKCE.

    10. לוחצים על יצירה כדי לסיים את יצירת מחבר החשבון הזה.

Google Cloud CLI

  ```sh
  gcloud alpha developer-connect account-connectors create my-ac \
    --location=LOCATION \
    --project=PROJECT_ID \
    --custom-provider-oauth-config-system-id=PROVIDER \
    --custom-oauth-config-host-uri= HOST_URI \
    --custom-oauth-config-auth-uri=AUTH_URI \
    --custom-provider-oauth-config-scopes=SCOPES \
    --custom-oauth-config-token-uri=TOKEN_URI \
    --custom-oauth-config-client-id=CLIENT_ID \
    --custom-oauth-config-client-secret=SECRET

  ```

בפקודה הזו, מחליפים את מה שכתוב בשדות הבאים:

  • LOCATION באזור שבו אתם יוצרים את מחבר החשבון הזה.

  • PROJECT_ID במזהה הפרויקט (ולא במספר הפרויקט) של הפרויקט שבו אתם יוצרים את מחבר החשבון הזה.

  • PROVIDER עם ספק ה-SCM שאליו אתם מתחברים:

    GITHUB_ENTERPRISE,‏ GITLAB_ENTERPRISE או BITBUCKET_DATA_CENTER.

  • HOST_URI בכתובת ה-URL של מערכת ניהול קוד המקור.

  • AUTH_URI עם כתובת ה-URL שמשמשת לאימות אצל ספק ה-SCM שבחרתם.

    לדוגמה:

    • ‫GitHub Enterprise: https://<host_name>/login/oauth/authorize

    • ‫GitLab Self Hosted: ‏ https://<host_name>/oauth/authorize

    • BitBucket Data Center: https://<host_name>/rest/oauth2/latest/authorize

  • SCOPES עם רשימה מופרדת בפסיקים של כל היקפי הגישה של ספק OAuth שרוצים לכלול במחבר החשבון הזה.

  • TOKEN_URI עם ה-URI שמשמש להחלפת קוד הרשאה בטוקן גישה.

  • CLIENT_ID עם מזהה הלקוח של אפליקציית ה-OAuth.

  • SECRET עם הסוד שסופק על ידי מערכת ה-SCMS שאליה אתם מתחברים.

חיבור החשבון שלך

אחרי שיוצרים מחבר חשבון, עדיין צריך לקשר את Developer Connect לחשבון שלכם אצל הספק לפני שתוכלו להשתמש במחבר החשבון.

  1. פותחים את Developer Connect במסוף Google Cloud .

    כניסה אל Developer Connect

  2. בוחרים באפשרות Account connectors (מחברים לחשבון).

    בדף Account connectors מפורטים כל מחברי החשבונות שיש לכם בפרויקט.

  3. לוחצים על השם של כלי החיבור לחשבון שרוצים לקשר אליו את החשבון אצל הספק.

    יוצג הדף Connector details.

  4. לוחצים על קישור החשבון.

    מוצגת תיבת דו-שיח לאימות OAuth.

  5. מזינים את המידע בתיבת הדו-שיח כדי לבצע אימות מול הספק.

  6. לוחצים על Authorize.

עדכון של מחבר חשבון

אפשר לעדכן מחבר חשבונות קיים, אבל אפשר לעדכן רק את היקפי ההרשאות של המחבר, להפעיל או להשבית את הגדרת ה-proxy, או גם וגם. אם מעדכנים את היקפי ההרשאות של מחבר חשבונות מסוים, כל המשתמשים הקיימים במחבר הזה מוסרים.

  1. פותחים את Developer Connect במסוף Google Cloud .

    כניסה אל Developer Connect

    בדף מאגרי Git ב-Developer Connect.

  2. בוחרים באפשרות Account connectors (מחברים לחשבון).

    בדף Account connectors מפורטים כל מחברי החשבונות שיש לכם בפרויקט.

  3. לוחצים על השם של כלי החיבור לחשבון שרוצים לעדכן.

    יוצג הדף Connector details.

  4. לוחצים על Edit.

  5. ברשימה Scopes, בוחרים את ההיקפים שרוצים לאפשר למחבר החשבון הזה.

  6. לוחצים על Save.

מחיקה של מחבר חשבונות

  1. פותחים את Developer Connect במסוף Google Cloud .

    כניסה אל Developer Connect

    בדף מאגרי Git ב-Developer Connect.

  2. בוחרים באפשרות Account connectors (מחברים לחשבון).

    בדף Account connectors מפורטים כל מחברי החשבונות שיש לכם בפרויקט.

  3. בתפריט עוד, בוחרים באפשרות מחיקה.

    יוצג הדף Connector details.

  4. לוחצים על Edit.

המאמרים הבאים