تتيح لك واجهة Firebase CLI إدارة مشاريعك على Firebase في دليل مشروع محلي يمكن التحكّم في إصداره. ويشمل ذلك Data Connect الخدمات في مشاريعك، ووصلات لهذه الخدمات، وموارد مثل المخطط ومصادر طلبات البحث وعمليات التحويل لكل موصل. تتيح لك واجهة برمجة التطبيقات أيضًا تثبيت محاكي Firebase Data Connect وتشغيله. إنّ واجهة برمجة التطبيقات هي بديل فعّال للعمل في وحدة تحكّم Firebase.
للحصول على تعليمات حول تثبيت تجربة Firebase CLI في برنامج المعاينة الخاصة، وأوامر CLI ذات الصلة بـ Data Connect، يُرجى الاطّلاع على مرجع CLI.
يوثّق هذا الدليل المرجعي ما يلي:
- الإدخالات الخاصة بـ Data Connect في ملف إعداد مشروع
firebase.json
. - إعدادات Data Connect في
dataconnect.yaml
وconnector.yaml
- عليك ضبط أدوار "إدارة الهوية وإمكانية الوصول" لمشاريعك التي تستخدِم Data Connect.
ملفات إعداد مشروع Firebase
مرجع إعداد firebase.json
استخدِم مفاتيح dataconnect
لإعداد خدمة واحدة أو أكثر من خدمات Data Connect
في مشروعك.
dataconnect: {
source: string // Path to the directory containing the dataconnect.yaml service file.
}
مرجع إعداد dataconnect.yaml
يخزِّن ملف dataconnect.yaml
معلومات الإعداد حول مواقع مصادر مخططات التطبيقات ومصادر الموصلات ومعلومات اتصال مصادر البيانات. يعمل الملف أيضًا كإشارة إلى دليل المشروع في Firebase CLI.
يتحكّم مفتاح schemaValidation
في مستوى التحقّق من المخطط الذي يتم تنفيذه
عند نقل المخططات أثناء عملية النشر. في حال عدم ضبط أي قيمة، يكون سلوك
الأمر dataconect:sql:migrate
هو تطبيق التغييرات المتوافقة وطلب
موافقتك قبل تنفيذ أي تغييرات صارمة. عند ضبط الإعداد، يكون السلوك على النحو التالي:
- وضع
STRICT
يجب أن يتطابق مخطّط قاعدة البيانات تمامًا مع مخطّط التطبيق قبل أن يتم نشر مخطّط التطبيق. سيتم حذف أي جداول أو أعمدة غير مستخدَمة في مخطّط Data Connect من قاعدة البيانات. - وضع
COMPATIBLE
. يجب أن يكون مخطّط قاعدة البيانات متوافقًا مع مخطّط التطبيق قبل أن يتم نشر مخطّط التطبيق، وتعتبر أي تغييرات إضافية اختيارية. تعني التوافق أنّ عمليات نقل ملف تعريف schema تستند إلى مخطّط التطبيق الذي تكتبه. العناصر في قاعدة البيانات التي لا يستخدمها مخطط التطبيق يتم تركها بدون تعديل. لذلك، بعد النشر، قد تحتوي الخلفية على مخطّطات وجداول وأعمدة غير مستخدَمة.
يتم شرح قيم المفاتيح الأخرى في هذا الملف في التعليقات أدناه.
# The top-level Firebase Data Connect YAML file.
# The Firebase Data Connect API version to target.
# Optional. Defaults to the latest version.
specVersion: string
# The ID of the Firebase Data Connect service resource.
# Required.
serviceId: string
# The location of the Firebase Data Connect service.
# Required.
location: string
# Required.
schema:
# Relative path to directory for schema definitions.
# Recursively loads all .gql files in this directory.
# Optional. If not present, defaults to ./schema.
source: string
# Datasource connection information.
# Required.
datasource:
# Required.
postgresql:
# The name of the PostgreSQL database.
# Required.
database: string
cloudSql:
# The ID of the CloudSQL instance resource.
# Required.
instanceId: string
# Schema validation mode for schema migrations.
# Defaults to unspecified/commented out, meaning you are prompted to
# review all changes during migration.
# If desired, uncomment and indicate one of "STRICT" or "COMPATIBLE".
schemaValidation: string
# Required.
# Relative paths to directories for connector definitions.
# Recursively loads all .gql files in the listed directories.
# All directories specified MUST contain a connector.yaml file.
connectorDirs: [string]
يفترض ملف YAML بنية دليل تلقائية (ولكن يمكن ضبطها) على النحو التالي:
./(project root)
/dataconnect
dataconnect.yaml
/schema
*.gql
/connector
connector.yaml
*.gql
مرجع إعدادات connector.yaml
استخدِم connector.yaml
لضبط خيارات وضع المصادقة التلقائي وإنشاء حزمة تطوير البرامج (SDK).
# The connector-level YAML file.
# Required. The connector name of the Firebase Data Connect connector resource.
connectorId: string
# Optional. If not specified, no generated libraries (i.e. type-safe SDKs) will be generated.
generate:
# Optional.
javascriptSdk:
# Path to the directory that will be updated with the latest generated
# web SDK.
# Required.
- outputDir: string
# Path to your package.json directory. If specified, the new generated sdk will be installed in this path.
# Optional. If not provided, the package will not be auto-installed for you.
- packageJsonDir: string
# Name of the package to be created.
# Optional. Defaults to @firebasegen/<connectorID>
- package: string
<option>: string
# Optional.
swiftSdk:
# Path to the directory that will be updated with the latest generated
# iOS Swift SDK.
# Required.
- outputDir: string
# Name of the package to be created.
- package: string
<option>: string
# Optional.
kotlinSdk:
# Path to the directory that will be updated with the latest generated
# Android SDK.
# Required.
- outputDir: string
# Name of the package to be created.
- package: string
<option>: string
إعدادات إدارة الهوية وإمكانية الوصول لمشاريع "ربط البيانات"
أدوار إدارة الهوية وإمكانية الوصول الدقيقة لـ Data Connect
يتمّ ربط الأدوار الأساسية وأدوار Firebase المحدّدة مسبقًا بأدوار Data Connect من المستوى الأدنى. يُرجى الرجوع إلى الجدول لمعرفة عملية الربط.
لإدارة عمليات منح أدوار إدارة الهوية وإمكانية الوصول الفردية لـ Data Connect على مستوى أكثر دقة، استخدِم وحدة تحكُّم Google Cloud.
دور إدارة الهوية وإمكانية الوصول | الأذونات |
---|---|
firebasedataconnect.googleapis.com/admin مشرف Firebase Data Connect API يتضمّن هذا الدور دور "مُشاهد Firebase Data Connect API". تعادل firebasedataconnect.* .يتم توفير هذا من خلال أدوار "مالك السحابة الإلكترونية" و"محرِّر السحابة الإلكترونية" ومشرف Firebase ومشرف تطوير Firebase. |
الإذن بالوصول الكامل إلى موارد Firebase Data Connect API، بما في ذلك البياناتfirebasedataconnect.googleapis.com/operations.delete firebasedataconnect.googleapis.com/operations.cancel firebasedataconnect.googleapis.com/services.create firebasedataconnect.googleapis.com/services.update firebasedataconnect.googleapis.com/services.delete firebasedataconnect.googleapis.com/services.executeGraphql firebasedataconnect.googleapis.com/services.executeGraphqlRead firebasedataconnect.googleapis.com/schemas.create firebasedataconnect.googleapis.com/schemas.update firebasedataconnect.googleapis.com/schemas.delete firebasedataconnect.googleapis.com/schemaRevisions.create firebasedataconnect.googleapis.com/schemaRevisions.delete firebasedataconnect.googleapis.com/connectors.create firebasedataconnect.googleapis.com/connectors.update firebasedataconnect.googleapis.com/connectors.delete firebasedataconnect.googleapis.com/connectorRevisions.create firebasedataconnect.googleapis.com/connectorRevisions.delete
|
firebasedataconnect.googleapis.com/viewer دور "مُستخدِم واجهة برمجة التطبيقات Firebase Data Connect" يتم توفير هذا الدور من خلال أدوار "مالك السحابة الإلكترونية" و"محرِّر السحابة الإلكترونية" و "مُستخدِم السحابة الإلكترونية" و"مشرف Firebase" و"مُستخدِم Firebase" و "مشرف Firebase Develop" و"مُستخدِم Firebase Develop". |
إذن بالاطّلاع فقط على موارد واجهة برمجة التطبيقات Firebase Data Connect API لا يمنح الدور
إذن الوصول إلى البيانات.cloudresourcemanager.googleapis.com/projects.list cloudresourcemanager.googleapis.com/projects.get firebasedataconnect.googleapis.com/operations.list firebasedataconnect.googleapis.com/operations.get firebasedataconnect.googleapis.com/locations.list firebasedataconnect.googleapis.com/locations.get firebasedataconnect.googleapis.com/services.list firebasedataconnect.googleapis.com/services.get firebasedataconnect.googleapis.com/schemas.list firebasedataconnect.googleapis.com/schemas.get firebasedataconnect.googleapis.com/schemaRevisions.list firebasedataconnect.googleapis.com/schemaRevisions.get firebasedataconnect.googleapis.com/connectors.list firebasedataconnect.googleapis.com/connectors.get firebasedataconnect.googleapis.com/connectorRevisions.list firebasedataconnect.googleapis.com/connectorRevisions.get
|
firebasedataconnect.googleapis.com/dataAdmin مشرف بيانات Firebase Data Connect API يتم توفير هذا الدور من خلال أدوار "مالك السحابة الإلكترونية" و"محرِّر السحابة الإلكترونية" و "مشرف Firebase" و"مشرف تطوير Firebase". |
إذن بالوصول الكامل للقراءة والكتابة إلى مصادر البياناتfirebasedataconnect.googleapis.com/services.executeGraphql firebasedataconnect.googleapis.com/services.executeGraphqlRead
|
firebasedataconnect.googleapis.com/dataViewer مُستخدِم واجهة برمجة التطبيقات Firebase Data Connect API للاطّلاع على البيانات توفّر هذه الوظيفة أدوار "مالك السحابة الإلكترونية" و"محرِّر السحابة الإلكترونية" ومشرف Firebase ومشرف تطوير Firebase. |
إذن بالقراءة فقط في الوصول إلى مصادر البياناتfirebasedataconnect.googleapis.com/services.executeGraphqlRead
|