我正在清理应用程序中的一些 API 密钥使用情况,并注意到我正在使用我的主 Twilio 帐户 SID 和令牌,而不是 API 密钥。
我有一个 Twilio Connect 应用程序,我的客户用它来委派对其帐户的访问权限以发送短信。根据 Twilio Connect 应用程序文档,授权 Twilio Connect 应用程序访问您的帐户会创建一个子帐户供第 3 方(在本例中为我的应用程序)使用。
子帐户的 Twilio 文档(截至撰写本文时,2024 年 7 月 5 日)声明:
您可以使用主帐户凭据(AccountSid 和 AuthToken)访问主帐户的 Twilio REST API 以及任何子帐户的 v2010 API 资源。您还可以使用子账户的AccountSid和AuthToken来访问该子账户的资源。
和
主账户API Key仅可用于访问主账户资源。对子账户资源的访问将被拒绝。
但是,在 API 密钥文档中(同样,在撰写本文时,2024 年 7 月 5 日),它指出:
标准 API 密钥使您可以访问 Twilio API 中的所有功能,但管理 API 密钥、帐户配置和子帐户除外。
主 API 密钥与标准密钥具有相同的访问权限,还可以管理 API 密钥、账户配置和子账户。主 API 密钥为您提供与使用帐户 API 凭证相同级别的访问权限。
所以问题是:“main”类型的 API 密钥是否能够访问作为授权我的 Twilio Connect 应用程序的一部分而创建的子帐户?
我通过实验得知答案是不。只有帐户身份验证令牌才有效。 API 密钥令牌,即使是“主”类型的令牌,也无法用于访问连接的应用程序子帐户。