前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[AI OpenAI-doc] 动作身份验证

[AI OpenAI-doc] 动作身份验证

作者头像
从零开始学AI
发布2024-05-21 14:10:27
770
发布2024-05-21 14:10:27
举报
文章被收录于专栏:AIAI

动作提供了不同的身份验证模式,以适应各种用例。要为您的动作指定身份验证模式,请使用GPT编辑器并选择“None”、“API密钥”或“OAuth”。

默认情况下,所有动作的身份验证方法都设置为“None”,但您可以更改此设置,并允许不同的动作具有不同的身份验证方法。

无身份验证

我们支持无需身份验证的流程,适用于用户可以直接向您的API发送请求而无需API密钥或使用OAuth登录的应用程序。

考虑在初始用户交互中使用无身份验证,因为如果他们被迫登录到应用程序,可能会导致用户流失。您可以创建一个“已注销”体验,然后通过启用单独的动作将用户移动到“已登录”体验。

API密钥身份验证

就像用户可能已经在使用您的API一样,我们通过GPT编辑器UI允许API密钥身份验证。当我们将密钥存储在数据库中时,我们会对其进行加密,以保护您的API密钥安全。

如果您的API执行的操作比无身份验证流程稍微具有一些后果,但不需要个别用户登录,则采用API密钥身份验证是很有用的。添加API密钥身份验证可以保护您的API,并为您提供更精细的访问控制以及请求来源的可见性。

OAuth

动作允许每个用户使用OAuth进行登录。这是提供个性化体验并为用户提供最强大的动作的最佳方式。具有动作的OAuth流程的简单示例如下:

  • 首先,在GPT编辑器UI中选择“身份验证”,然后选择“OAuth”。
  • 您将被提示输入OAuth客户端ID、客户端密钥、授权URL、令牌URL和范围。
    • 客户端ID和密钥可以是简单的文本字符串,但应遵循OAuth最佳实践。
    • 我们存储客户端密钥的加密版本,而客户端ID则可供最终用户使用。
  • OAuth请求将包含以下信息:request={'grant_type': 'authorization_code', 'client_id': 'YOUR_CLIENT_ID', 'client_secret': 'YOUR_CLIENT_SECRET', 'code': 'abc123', 'redirect_uri': 'https://chatgpt.com/aip/g-some_gpt_id/oauth/callback'}
  • 为了让某人使用OAuth进行操作,他们需要发送一个调用操作的消息,然后用户将在ChatGPT UI中看到一个“登录到域名”按钮。
  • 授权URL端点应返回如下响应:{ "access_token": "example_token", "token_type": "bearer", "refresh_token": "example_token", "expires_in": 59 }
  • 在用户登录过程中,ChatGPT将使用指定的authorization_content_type向您的授权URL发出请求,我们期望得到一个访问令牌,以及可选的刷新令牌,我们将使用该刷新令牌定期获取新的访问令牌。
  • 每当用户向动作发送请求时,用户的令牌将通过Authorization标头传递:(“Authorization”: “Bearer/Basic”)。
  • 出于安全原因,我们要求OAuth应用程序使用state参数。

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 无身份验证
  • API密钥身份验证
  • OAuth
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档