簡體   English   中英

在 Google Cloud 上自動生成 API 密鑰

[英]Automate API key generation on Google Cloud

我們目前正在開發基於 Google Cloud Functions 的 API 以及 Google 的 API 網關。

As every customer who buys access to our API should get their own API key, I'm wondering if there's a ways to create those API keys using and API. 我想要實現的是客戶能夠在他們自己的設置中請求一個 API 密鑰,所以單擊一個按鈕,這會觸發一個 function,生成一個密鑰並將其顯示給前端的客戶。

在搜索了相當長的一段時間后,我沒有找到任何關於如何構建它的信息。 也可能是我的處理方法是完全錯誤的——如果是這樣,請烤我並給我一些建議!

提前感謝您的回答!

無法通過程序創建 Google 憑據,它們必須手動創建。

事實上,有一些東西。 有一段時間處於測試階段(超過 1 年前),很快又回到了 alpha 階段,並且沒有記錄(或非常糟糕)

正如您在 gcloud alpha 命令中看到的,您可以將 API 密鑰與 CLI 和 API 一起使用。 使用此命令測試並了解如何使用 API 密鑰的更多信息。

gcloud alpha services api-keys create --display-name="created by API" --log-http

謹慎使用

首先,我沒有關於這個 API 的更新,它會存活嗎? Google 的生命周期和“沒有消息”很奇怪,請記住 API 可以隨時刪除。

其次,API Keys 是一種長期存在的令牌,出於安全原因不推薦使用。 但有時,有總比沒有好,所以在沒有其他解決方案的情況下使用它是可以接受的。 否則,更喜歡 OAuth。

最終,API 密鑰驗證項目,而不是客戶/用戶。 在 API 網關請求轉發之后,您不會在 header 數據中擁有它。 只有項目 ID(或編號,我不記得了)。 因此,如果您想區分每個客戶/用戶,您需要創建不同的項目,並在每個項目中生成一個密鑰。 如果您在 API 網關上實施速率限制,同樣的事情:配額是每個項目而不是每個 API 密鑰。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM