为 Dapr 请求启用令牌身份验证

在 Azure Container Apps 中为应用程序启用 Dapr 时,它会将环境变量APP_API_TOKEN注入到应用的容器中。 Dapr 在发送到你的应用程序的所有请求中都包含相同的令牌,具体如下:

  • HTTP 标头 (dapr-api-token)
  • gRPC 元数据选项 (dapr-api-token[0])

令牌是随机生成的,在每个应用和应用修订版本中都是唯一的。 它也可以随时更改。 应用程序在启动时应从 APP_API_TOKEN 环境变量中读取令牌,以确保它使用的是正确的令牌。

可以使用此令牌来验证传入应用程序的调用确实来自 Dapr 边车,即便是通过公共终结点进行侦听时亦然。

  1. daprd 容器将其读取并注入到从 Dapr 到应用程序的每个调用中。
  2. 然后,应用程序可以使用该令牌来验证该请求是否来自 Dapr。

先决条件

对来自 Dapr 的请求进行身份验证

如果使用 Dapr SDK,Dapr SDK 会自动验证来自 Dapr 的所有传入请求中的令牌,拒绝不包含正确令牌的调用。 无需执行其他任何操作。

未包含令牌或包含错误令牌的传入请求会被自动拒绝。

后续步骤