API 金鑰與建立金鑰時所屬的 Google Cloud 專案相關聯。如果您的 API 需要 API 金鑰,您就必須提供 API 使用者 Cloud Endpoints 服務建立時所屬專案中的金鑰,或是讓 API 使用者能夠在自己的專案中啟用您的 API 及建立 API 金鑰。 Google Cloud本頁說明如何授權使用者啟用您的 API。
授予存取權
Endpoints 會使用 Identity & Access Management (IAM)服務消費者角色,允許您Google Cloud 專案成員以外的人員在自己的 Google Cloud專案中啟用您的 API。本節說明如何使用Google Cloud 控制台或 Google Cloud CLI 授予存取權。
Google Cloud 控制台
在 Google Cloud 控制台中,依序前往您專案的「Endpoints」 >「Services」頁面。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-09-04 (世界標準時間)。"],[[["\u003cp\u003eAPI access is granted by assigning the \u003cstrong\u003eService Consumer\u003c/strong\u003e role from Identity and Access Management (IAM) to users or Google Groups, allowing them to enable the API in their own Google Cloud projects.\u003c/p\u003e\n"],["\u003cp\u003eThe Google Cloud console or the gcloud command-line tool can be used to add a user or group to the \u003cstrong\u003eService Consumer\u003c/strong\u003e role, which then allows them to access an API.\u003c/p\u003e\n"],["\u003cp\u003eAccess to an API can be revoked by removing the \u003cstrong\u003eService Consumer\u003c/strong\u003e role from a user or group using either the Google Cloud console or gcloud commands, but it does not stop users who have already enabled the API from calling it.\u003c/p\u003e\n"],["\u003cp\u003eOnce access is granted, users should be informed and directed on how to enable the API in their Google Cloud projects.\u003c/p\u003e\n"],["\u003cp\u003eAPI Keys are linked to a specific Google cloud project, where the API was created, and can be shared for API access, or users can create their own in their respective projects.\u003c/p\u003e\n"]]],[],null,["# Controlling who can enable your API\n\n\u003cbr /\u003e\n\nAPI keys are associated with the Google Cloud project in which\nthey have been created. If your API requires an API key, you either have to give\nyour API users a key from the project that you created the Cloud Endpoints\nservice in, or you can let users enable your API in their own Google Cloud\nproject and create an API key. This page shows you how to grant the permission\nthat users need to enable your API.\n\nGranting access\n---------------\n\nEndpoints uses the\n[Identity and Access Management (IAM)](/iam/docs)\n**Service Consumer** role to allow someone who isn't a member of your\nGoogle Cloud project to enable your API in their own Google Cloud\nproject. This section shows you how to grant access using the\nGoogle Cloud console or the Google Cloud CLI. \n\n### Google Cloud console\n\n1. In the Google Cloud console, go to the **Endpoints** \\\u003e **Services** page for your project.\n\n\n [Go to the Endpoints Services page](https://console.cloud.google.com/endpoints)\n\n \u003cbr /\u003e\n\n2. If you have more than one API, click the name of the API that you want to grant access to.\n3. If the **Permissions** side panel isn't open, click **Show Permissions Panel**.\n4. In the **Add Principal** field, enter the email address of the person or [Google Group](https://support.google.com/groups/answer/2464926) that you want to grant access to.\n5. In the **Select a role** drop-down menu, select **Service Management** \\\u003e **Service Consumer**.\n6. Click **Save**.\n7. Repeat adding members and selecting the role, as needed.\n8. Contact the users or groups that you added and let them know they can enable the API in their Google Cloud projects. See [Enable an API in your Google Cloud\n project](/endpoints/docs/frameworks/enable-api) for information on how to enable a service in APIs \\& services.\n\n### gcloud\n\n1. Open Cloud Shell, or if you have the Google Cloud CLI installed, open a terminal window.\n - If you are granting access to an individual user:\n\n - If you are granting access to a Google Group:\n\n2. Contact the users or groups that you added and let them know they can enable the API in their Google Cloud projects. See [Enable an API in your Google Cloud\n project](/endpoints/docs/frameworks/enable-api) for information on how to enable a service in APIs \\& services.\n\nRevoking access\n---------------\n\nYou revoke access to your API by removing the **Service Consumer** role from a\nuser or group that previously had the role. After you revoke someone's access,\nthey won't be able to enable your API.\n| **Note:** If someone has already enabled your API, revoking access doesn't prevent them from calling your API. Although there is no easy way to to prevent these calls, you can add logic to your code that disallows calls from a specific caller's API key.\n\nThis section shows you how to revoke access using the Google Cloud console or\nthe Google Cloud CLI. \n\n### Google Cloud console\n\n1. In the Google Cloud console, go to the **Endpoints** \\\u003e **Services** page for your Google Cloud project.\n\n\n [Go to the Endpoints Services page](https://console.cloud.google.com/endpoints)\n\n \u003cbr /\u003e\n\n2. If you have more than one API, click the name of the API that you want to revoke access to.\n3. If the **Permissions** side panel isn't open, click **addPermissions**.\n4. Click the **Role** card that the member belongs to.\n5. Click **Delete** delete.\n\n### gcloud\n\n- If you are revoking access for an individual user:\n\n- If you are revoking access for a Google Group:\n\nWhat's next\n-----------\n\n- Tell users how to [enable your API in their Google Cloud project](/endpoints/docs/frameworks/enable-api).\n\n\u003c!-- --\u003e\n\n- Learn more about sharing APIs protected by API keys.\n\n - [Java: Sharing APIs protected by API key](/endpoints/docs/frameworks/java/restricting-api-access-with-api-keys-frameworks#sharing_apis_protected_by_api_key)\n - [Python: Sharing APIs protected by API key](/endpoints/docs/frameworks/java/restricting-api-access-with-api-keys-frameworks#sharing_apis_protected_by_api_key)\n\n\u003c!-- --\u003e\n\n- Create a [Cloud Endpoints Portal](/endpoints/docs/frameworks/dev-portal-overview) for your users."]]