Firestore 安全规则推荐器
Firestore 安全规则推荐器支持以下建议子类型:
这会给 Firestore 客户带来安全隐患,因为这会向用户提供超出用户预期范围的额外访问权限。
本文档介绍了如何启用和查看建议和数据分析,以提高数据库的安全性。
准备工作
在查看 Firestore 安全规则建议和数据分析之前,请执行以下操作:
按照启用 API 中的说明启用 Recommender API。
确保您有足够的权限。 您必须拥有下列角色之一,才能具有必要的权限:
任务说明 角色 查看建议/数据分析 roles/recommender.firestoredatabasefirebaserulesViewer
查看和更新(忽略)建议/数据分析 roles/recommender.firestoredatabasefirebaserulesAdmin
在透明度和控制中心停用建议/数据分析。如需了解详情,请参阅停用。 roles/dataprocessing.admin
这些 Recommender 角色提供以下 API 权限:
角色 包含的权限 roles/recommender.firestoredatabasefirebaserulesViewer
recommender.firestoreDatabaseFirebaseRulesRecommendations.get
recommender.firestoreDatabaseFirebaseRulesRecommendations.list
recommender.firestoreDatabaseFirebaseRulesInsights.get
recommender.firestoreDatabaseFirebaseRulesInsights.list
roles/recommender.firestoredatabasefirebaserulesAdmin
roles/recommender.firestoredatabasefirebaserulesViewer
权限,再加上
recommender.firestoreDatabaseFirebaseRulesRecommendations.update
recommender.firestoreDatabaseFirebaseRulesInsights.update
如需详细了解角色以及如何授予访问权限,请参阅以下内容:
只有当您有非空且正在使用的数据库,并且这些数据库配置了任何可供广泛访问的规则时,您才能查看 Firestore 安全规则建议。项目必须至少已创建 30 天,系统才会为其生成建议。
您可以通过多种方式查看 Firestore 安全规则建议/数据分析:
查看建议
Google Cloud 控制台
您可以按以下步骤查看建议:
前往 Google Cloud 控制台,或使用以下按钮:
您可以在建议中心或数据库中心页面上查看建议。
搜索建议,系统会将您引导至 Recommendation Hub 页面。 您可以选择特定类别的建议并查看它们。
搜索数据库中心。 您可以应用产品过滤条件,并查看特定的车队问题。
gcloud CLI
如需使用 gcloud
列出 Firestore 安全规则建议,请运行 gcloud recommender recommendations list
命令,如下所示:
gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.firestore.database.<var>RECOMMENDER</var>
替换以下内容:
PROJECT_ID
:您的项目 IDLOCATION
:区域,例如us-central1
RECOMMENDER
:Recommender 的 ID,例如FirebaseRulesRecommender
。
Recommender API
如需使用 Recommendations API 列出 Firestore 安全规则建议,请调用 recommendations.list
方法,如下所示:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: PROJECT_ID" \
"https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.firestore.database.RECOMMENDER/recommendations"
替换以下内容:
PROJECT_ID
:您的项目 ID。LOCATION
:区域,例如us-central1
。RECOMMENDER
:Recommender 的 ID,例如FirebaseRulesRecommender
。
如需了解详情,请参阅使用 API - 建议。
查看数据分析
您可以通过多种方式查看有关 Firestore 安全规则的数据分析和详细建议。
gcloud CLI
如需使用 gcloud
查看数据分析,请运行 gcloud recommender insights list
命令,如下所示:
gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.firestore.database.INSIGHT_TYPE
替换以下内容:
PROJECT_ID
:您的项目 ID。LOCATION
:区域,例如us-central1
。INSIGHT_TYPE
:数据分析类型的 ID,指定为FirebaseRulesInsight
Recommender API
如需使用 Recommender API 列出数据分析,请运行以下命令:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/insightTypes/google.firestore.database.INSIGHT_TYPE/insights"
替换以下内容:
PROJECT_ID
:您的项目 ID。LOCATION
:区域,例如us-central1
。INSIGHT_TYPE
:数据分析类型的 ID,指定为FirebaseRulesInsight
。
如需了解详情,请参阅使用 API - 数据分析。
采纳建议
如需详细了解如何提高数据库安全性,请参阅设计安全规则结构。
价格
Firestore 安全规则建议和数据分析是免费提供的。如需了解其他价格层级,请参阅 Recommender 价格。