יצירה והגדרה של חיבור ל-Google Drive
בדף הזה מוסבר איך ליצור ולהגדיר חיבור ל-Google Drive בכלי Integration Connectors. למידע נוסף על מחבר Google Drive, אפשר לעיין במאמר סקירה כללית על מחבר Google Drive.
לפני שמתחילים
בפרויקט Google Cloud שלכם, מבצעים את המשימות הבאות:
- מוודאים שהגדרתם חיבור לרשת. מידע על תבניות רשת זמין במאמר קישוריות לרשת.
- נותנים למשתמש שמגדיר את המחבר את תפקיד ה-IAM roles/connectors.admin.
- מקצים את התפקידים
roles/secretmanager.viewerו-roles/secretmanager.secretAccessorב-IAM לחשבון השירות שרוצים להשתמש בו עבור המחבר. - מפעילים את השירותים הבאים:
-
secretmanager.googleapis.com(Secret Manager API) -
connectors.googleapis.com(Connectors API)
במאמר הפעלת שירותים מוסבר איך להפעיל שירותים. אם השירותים או ההרשאות האלה לא הופעלו בפרויקט שלכם בעבר, תתבקשו להפעיל אותם כשאתם מגדירים את המחבר.
-
יצירת חיבור ל-Google Drive
כדי ליצור קישור ל-Google Drive:
- במסוף Google Cloud , נכנסים לדף Integration Connectors > Connections.
- לוחצים על Create Connection (יצירת חיבור).
יופיע הדף יצירת חיבור.
- בקטע מיקום:
- לוחצים על אזור ובוחרים מיקום לחיבור.
רשימה של כל האזורים הנתמכים מופיעה במאמר מיקומים.
- לוחצים על הבא.
- לוחצים על אזור ובוחרים מיקום לחיבור.
- בקטע פרטי החיבור, מציינים את הפרטים הבאים:
- מחבר: בוחרים באפשרות Google Drive.
- גרסת המחבר: בוחרים את גרסת המחבר שרוצים להשתמש בה.
גרסת המחבר שתבחרו תלויה בגרסת Google Drive API שבה אתם רוצים להשתמש. מידע נוסף זמין במאמר בנושא גרסאות של חיבור ל-Google Drive.
- שם החיבור: מזינים שם לחיבור.
- תיאור: (אופציונלי) מזינים תיאור לחיבור.
- אופציונלי: מפעילים את Cloud logging ובוחרים רמת יומן. כברירת מחדל, רמת היומן מוגדרת כ-
Error. - חשבון שירות: בוחרים את חשבון השירות שרוצים להשתמש בו לחיבור. מוודאים שלחשבון השירות יש את התפקידים וההרשאות הרלוונטיים ב-IAM שנדרשים.
- תמיכה בכל תיקיות Drive: מסמנים את תיבת הסימון הזו כדי להפעיל גישה לתיקיות אחסון שיתופי. האפשרות הזו זמינה רק ב-Google Drive גרסה 2.
- הגדרות של צומת החיבור: (אופציונלי) קובעים את ההגדרות של צומת החיבור.
- מספר מינימלי של צמתים: מזינים את המספר המינימלי של צמתי חיבור.
- מספר הצמתים המקסימלי: מזינים את מספר צמתי החיבור המקסימלי.
- לוחצים על הבא.
צומת הוא יחידה (או עותק) של חיבור שמבצעת עיבוד של עסקאות. כדי לעבד יותר טרנזקציות לחיבור מסוים, צריך יותר צמתים, ולהפך: כדי לעבד פחות טרנזקציות, צריך פחות צמתים. כדי להבין איך הצמתים משפיעים על התמחור של המחבר, אפשר לעיין במאמר בנושא תמחור של צמתים לחיבור. אם לא מזינים ערכים, כברירת מחדל, מספר הצמתים המינימלי מוגדר כ-2 (לזמינות טובה יותר) ומספר הצמתים המקסימלי מוגדר כ-50.
- בקטע אימות, בוחרים את סוג האימות לחיבור ומגדירים אותו:
חשבון השירות
בוחרים באפשרות הזו אם האפליקציה פועלת במכונה וירטואלית ב-Google Cloud וצריך להשתמש בחשבון השירות שמצורף למכונה הווירטואלית לצורך אימות.
כדי להשתמש בסוג האימות הזה, צריך חשבון שירות עם תפקידים והרשאות IAM רלוונטיים שנדרשים לאימות.
מידע על יצירת חשבון שירות זמין במאמר יצירה וניהול של חשבונות שירות. במאמר הענקה, שינוי וביטול גישה למשאבים מוסבר איך נותנים תפקידים לחשבון שירות.
פרטי חיבור לדוגמה לסוג אימות של חשבון שירות
שם השדה פרטים מיקום us-central1 מחבר Google Drive גרסת המחבר 2 שם החיבור googledrive-ws-gcpaccount הפעלת Cloud Logging כן חשבון השירות 123456789012-compute@developer.gserviceaccount.com מספר הצמתים המינימלי 2 מספר הצמתים המקסימלי 50 אימות אימות באמצעות חשבון שירות OAuth 2.0 – JWT Bearer
כדי להגדיר את סוג האימות OAuth 2.0 JWT Bearer:
- יוצרים מפתח JSON לחשבון שירות ומורידים את קובץ מפתח ה-JSON. קובץ המפתח הזה משמש כאישור JWT לחיבור.
- יוצרים סוד כדי לאחסן את קובץ מפתח ה-JSON או את אישור ה-JWT.
- כשיוצרים את החיבור בכלי Integration Connectors, צריך לספק את פרטי הסוד:
- JWT Cert: בוחרים את הסוד שמכיל את אישור ה-JWT.
- גרסת סוד: בוחרים את גרסת הסוד של הסוד שנבחר.
- JWT Subject (נושא ה-JWT): (אופציונלי) מזינים את נושא ה-JWT שבו רוצים להשתמש לחיבור. הערך הזה משמש כשדה
subבאסימון JWT.
פרטי חיבור לדוגמה עבור OAuth 2.0 – סוג אימות JWT Bearer
שם השדה פרטים מיקום us-central1 מחבר Google Drive גרסת המחבר 2 שם החיבור googledrivejwt הפעלת Cloud Logging כן חשבון השירות 123456789012-compute@developer.gserviceaccount.com מספר הצמתים המינימלי 2 מספר הצמתים המקסימלי 50 אימות OAuth 2.0 – JWT Bearer JWT Cert { "type": "service_account", "project_id": "sm****-****-******", "private_key_id": "0b***************************", "private_key": "-----BEGIN PRIVATE KEY-----\nO********************************************=\n-----END PRIVATE KEY-----\n", "client_email": "go**********************************8", "client_id": "10**********************", "auth_uri": "https:***********************", "token_uri": "https:************************", "auth_provider_x509_cert_url": "https:*********************", "client_x509_cert_url": "https:****************************************************", "universe_domain": "go********" }גרסה של סוד 2 קוד הרשאה ל-Oauth 2.0
צריך להשתמש בשיטה הזו אם האפליקציה דורשת אינטראקציה של משתמשי הקצה דרך התחברות מבוססת-דפדפן.
כדי להגדיר את סוג האימות 'קוד הרשאה ל-OAuth 2.0':
- יוצרים פרטי כניסה ב-OAuth 2.0 לאפליקציית האינטרנט. במהלך התהליך הזה נוצר מזהה לקוח וקובץ JSON של סוד הלקוח.
- מזהים את היקפי הגישה שרוצים להעניק לאפליקציה.
- יוצרים סוד לאחסון פרטי הכניסה של OAuth 2.0 (
client_secret.json). - כשיוצרים את החיבור בכלי Integration Connectors, צריך לספק את מזהה הלקוח, ההיקפים ופרטי הסוד:
- Client ID (מזהה לקוח): מזינים את מזהה הלקוח שנוצר עבור אפליקציית האינטרנט.
- היקפים: מזינים רשימה של היקפים רצויים שמופרדים בפסיקים.
- Client Secret: בוחרים את הסוד שמכיל את פרטי הכניסה של OAuth 2.0.
- גרסת סוד: בוחרים את גרסת הסוד של הסוד שנבחר.
פרטי חיבור לדוגמה לסוג האימות 'קוד הרשאה ל-Oauth 2.0'
שם השדה פרטים מיקום europe-west1 מחבר Google Drive גרסת המחבר 2 שם החיבור googledrive-wsconn-code הפעלת Cloud Logging כן חשבון השירות 123456789012-compute@developer.gserviceaccount.com מספר הצמתים המינימלי 2 מספר הצמתים המקסימלי 50 אימות OAuth 2.0 – קוד הרשאה מזהה לקוח CLIENT_ID היקפים https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/drive.appdata, https://www.googleapis.com/auth/drive.appfolder, https://www.googleapis.com/auth/drive.install, https://www.googleapis.com/auth/drive.metadata, https://www.googleapis.com/auth/drive.metadata.readonly, https://www.googleapis.com/auth/drive.activity, https://www.googleapis.com/auth/drive.activity.readonly, https://www.googleapis.com/auth/drive.apps.readonly, https://www.googleapis.com/auth/drive.scripts, and https://www.googleapis.com/auth/drive.meet.readonly סוד לקוח CLIENT_SECRET גרסה של סוד 2 - הפעלת ביטול של אימות: (אופציונלי) מסמנים את תיבת הסימון הזו כדי לאפשר לחיבור לקבל אימות שונה באופן דינמי במהלך זמן הריצה.
- לוחצים על הבא.
- בקטע בדיקה, בודקים את פרטי החיבור והאימות. תמיד אפשר ללחוץ על אחד מהקטעים הקודמים כדי לבצע שינויים, אם צריך.
- לוחצים על יצירה.
הכלי Integration Connectors מתחיל ליצור את החיבור לתצורה שצוינה. התהליך הזה נמשך כמה דקות. אחרי שיוצרים את הקישור, מועברים לדף Connections.
שימוש בחיבור ל-Google Drive בשילוב
אחרי שיוצרים את החיבור, הוא זמין גם ב-Apigee Integration וגם ב-Application Integration. אפשר להשתמש בחיבור באינטגרציה באמצעות המשימה Connectors.
- כדי להבין איך ליצור ולהשתמש במשימה Connectors ב-Apigee Integration, אפשר לעיין במאמר משימת Connectors.
- מידע על יצירה ושימוש במשימת Connectors ב-Application Integration זמין במאמר משימת Connectors.
ברשימה ישויות ופעולות נתמכות אפשר לראות אילו ישויות ופעולות נתמכות. מידע על פעולות ספציפיות למחברים נתמכים זמין במאמר פעולות נתמכות.
דוגמאות לתרחישי שימוש ב-Application Integration
בדוגמאות הבאות מוסבר איך להשתמש במשימת המחברים ב-Application Integration כדי לבצע פעולות באמצעות חיבור Google Drive שהגדרתם.
דוגמה – הצגת כל הקבצים
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
FilesמהרשימהEntity. - בוחרים את הפעולה
Listולוחצים על סיום. - בקטע Task Input במשימה Connectors, אפשר להגדיר את filterClause בהתאם לדרישות הלקוח.
הערך של filterClause צריך תמיד להיות מועבר בתוך גרשיים בודדים (') בפורמט הזה.
אפשר להשתמש בfilterClause כדי לסנן קבוצה מסוימת של רשומות על סמך עמודות כלשהן.
דוגמה – קבלת פרטי קובץ
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
FilesמהרשימהEntity. - בוחרים את הפעולה
Getולוחצים על סיום. - מגדירים את entityId לערך '1wsHFAusizqFe5O2', שהוא המפתח שיועבר. כדי להגדיר את entityId, בקטע Data Mapper (מיפוי נתונים) של Data Mapping (מיפוי נתונים), לוחצים על Open Data Mapping Editor (פתיחת כלי מיפוי הנתונים), מזינים
"1wsHFAusizqFe5O2"בשדה Input Value (ערך קלט) ובוחרים את entityId כמשתנה מקומי.
הערך של entityId צריך להיות מועבר ישירות, למשל '1wsHFAusizqFe5O2'. בדוגמה הזו, הערך הייחודי של המפתח הראשי הוא '1wsHFAusizqFe5O2', והוא מועבר.
דוגמה – מחיקת קובץ
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
FilesמהרשימהEntity. - בוחרים את הפעולה
Deleteולוחצים על סיום. - מגדירים את entityId לערך '1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L', שהוא המפתח שיועבר. כדי להגדיר את entityId, בקטע Data Mapper (מיפוי נתונים) של Data Mapping (מיפוי נתונים), לוחצים על Open Data Mapping Editor (פתיחת כלי מיפוי הנתונים), מזינים
"1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L"בשדה Input Value (ערך קלט) ובוחרים את entityId כמשתנה מקומי.
אם לישות יש שני מפתחות עסקיים מורכבים או שני מפתחות ראשיים, במקום לציין את entityId, אפשר גם להגדיר את filterClause ל-id='1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L'.
דוגמה – יצירת קובץ
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
FilesמהרשימהEntity. - בוחרים את הפעולה
Createולוחצים על סיום. - בקטע Data Mapper (מיפוי נתונים) במשימה Data Mapping (מיפוי נתונים), לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות entityId/connectorInputPayload כמשתנה מקומי.
{ "FileData": " ",
"Name": "creategcpshareddrivedocxfile.docx",
"MIMEType": "application/vnd.google-apps.document",
"Encoding": "BASE64"}
אם השילוב יצליח, לפרמטר התגובה connectorOutputPayload של משימת המחבר יהיה ערך שדומה לזה:
{ "Id": "1C48uLda6lyeakx2hOUdwnib-qtFOAhlpR_Ja2AmPvTU"}
דוגמה – יצירת אחסון שיתופי
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
DrivesמהרשימהEntity. - בוחרים את הפעולה
Createולוחצים על סיום. - בקטע Data Mapper (מיפוי נתונים) במשימה Data Mapping (מיפוי נתונים), לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות entityId/connectorInputPayload כמשתנה מקומי.
{"Name": "SharedDrive7"}
אם השילוב יצליח, לפרמטר התגובה connectorOutputPayload של משימת המחבר יהיה ערך שדומה לזה:
{"Id": "0AN6y5wEvVrmPUk9PVA"}
דוגמה – יצירת הרשאה לקובץ, לתיקייה או לאחסון שיתופי
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
PermissionsמהרשימהEntity. - בוחרים את הפעולה
Createולוחצים על סיום. - בקטע Data Mapper (מיפוי נתונים) במשימה Data Mapping (מיפוי נתונים), לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות entityId/connectorInputPayload כמשתנה מקומי.
{"ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L",
"Role": "COMMENTER",
"Type": "USER",
"EmailAddress": "charlie@altostrat.com"}
אם השילוב יצליח, לפרמטר התגובה connectorOutputPayload של משימת המחבר יהיה ערך שדומה לזה:
{ "PermissionId": "10596783046483894074",
"ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L"}
דוגמה – עדכון פרטי קובץ
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
FilesמהרשימהEntity. - בוחרים את הפעולה
Updateולוחצים על סיום. - בקטע Data Mapper (מיפוי נתונים) במשימה Data Mapping (מיפוי נתונים), לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות Local variable (משתנה מקומי) בשדה entityId/connectorInputPayload/filterClause.{"Name": "New Updated file"} - מגדירים את entityId של הקובץ. כדי להגדיר את entityId, לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות entityId/connectorInputPayload/filterClause כמשתנה מקומי.במקום לציין את entityId, אפשר גם להגדיר את filterClause לערך 1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm.
הרצת הדוגמה הזו מחזירה תגובה שדומה לתגובה הבאה במשתנה הפלט connectorOutputPayload של משימת המחבר:
{"Id": "1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm">}דוגמה – עדכון הרשאה לקובץ, לתיקייה או לאחסון שיתופי
- בתיבת הדו-שיח
Configure connector task, לוחצים עלEntities. - בוחרים באפשרות
PermissionsמהרשימהEntity. - בוחרים את הפעולה
Updateולוחצים על סיום. - בקטע Data Mapper (מיפוי נתונים) במשימה Data Mapping (מיפוי נתונים), לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות Local variable (משתנה מקומי) בשדה entityId/connectorInputPayload/filterClause. - מגדירים את entityId של ההרשאה. כדי להגדיר את entityId, לוחצים על
Open Data Mapping Editor, מזינים ערך דומה לערך הבא בשדהInput Valueובוחרים באפשרות entityId/connectorInputPayload/filterClause כמשתנה מקומי.במקום לציין את entityId, אפשר גם להגדיר את filterClause לערך
PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA'.הרצת הדוגמה הזו מחזירה תגובה שדומה לתגובה הבאה במשתנה הפלט
connectorOutputPayloadשל משימת המחבר:{"PermissionId": "10596783046483894074", "ResourceId": "0AKfRSSy6kZbfUk9PVA"}
(PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA')
{ "Role": "READER"}