
## Google Service Auth Workflow (Minimal)
### 目的
创建一个Google ID令牌,让n8n能够使用`Authorization: Bearer …`调用您的Cloud Run服务。
### 工作原理
* **Set节点**:设置变量`service_url`、`client_email`、`token_uri`
* **JWT节点**:签署JWT令牌
* **HTTP Request节点**:POST到`token_uri`获取Bearer令牌
* 使用返回的`id_token`在下一个HTTP请求中调用指定的服务URL
### 输出
* 从Google Cloud Run返回的有效载荷
### 所需设置 — Google Cloud Run和服务账户
您需要:
– **配置Google Cloud Run服务**(设置**需要身份验证**)
– **创建Google服务账户**并授予其对该服务的**Cloud Run调用者**权限
详细的分步说明,请参阅我的Medium文章:
**[Build a Secure Google Cloud Run API, Then Call It from n8n (Free Tier)](https://medium.com/@marcocodes/build-a-secure-google-cloud-run-api-then-call-it-from-n8n-88c03291a95f)**
### 配置说明
#### 变量配置
– **service_url** — 您的Cloud Run服务URL(基础URL)
– **client_email** — 来自`.json密钥`文件
#### 创建JWT凭据
使用从生成的`.json密钥`文件中获取的**private_key**。
– **密钥类型**:PEM密钥
– **私钥**:`private_key`(完整块,包括`—–BEGIN PRIVATE KEY—–` … `END PRIVATE KEY—–`)
– **算法**:RS256
#### 创建Bearer凭据
使用`{{$json.id_token}}`值。
#### 将所需的`/path`附加到service_url。
### 适用对象
任何想要在Google Cloud Run上运行自定义API逻辑并从n8n安全调用的人——无需公开暴露,无需本地托管。
### 功能
最小化流程:Set → JWT(签名)→ HTTP(令牌交换)→ HTTP(使用Authorization: Bearer 调用Cloud Run)。无缓存,无额外功能——仅够身份验证并访问您的端点。
### 设置方法
一般说明如下——更多信息请参阅我的详细指南:
**构建安全的Google Cloud Run API,然后从n8n调用(免费层级)**
设置:
1. 创建Cloud Run服务并启用需要身份验证(Cloud IAM)。
2. 创建具有该服务Cloud Run调用者权限的Google服务账户。
3. 在n8n中,在Set节点中设置service_url、client_email、token_uri(https://oauth2.googleapis.com/token)。
4. 从您的服务账户密钥创建JWT(PEM)凭据(粘贴完整的BEGIN/END块)。
5. 运行工作流;第二个HTTP节点使用ID令牌调用您的Cloud Run URL。
### 要求
– Cloud Run服务URL(需要身份验证)
– 具有Cloud Run调用者权限的Google服务账户
– 从服务账户下载的私钥JSON字段 | 需要生成JWT凭据
### 更多详情
完整说明(最小化+模块化版本):
**构建安全的Google Cloud Run API,然后从n8n调用(免费层级)**

评论(0)