验证
了解 AgentGPT 如何在不同的开发模式下以及与不同的提供商处理身份 验证。
开发模式下的认证
在开发模式下,您的应用程序使用简化版本的身份验证,以便于测试和调试。这通常不安全,不应在生产环境中使用。
在 .env 文件中,您可以使用 NODE_ENV 变量在开发环境和生产环境之间切换。当它设置为“开发”时,应用程序以开发模式运行。
要使应用程序使用不安全、简单的身份验证版本,请将 .env 文件中的 NEXTAUTH_SECRET 变量设置为简单、不安全的值(例如“changeme”)。
访问提供商密钥
要启用不同类型的 OAuth 身份验证,您需要从相应的提供商处获取密钥。以下是获取这些密钥的一般说明:
- GitHub
- Discord
在 Google Cloud Console 中创建一个项目。
转到“凭据”,单击“创建凭据”并选择“OAuth 客户端 ID”。
配置您的 OAuth 同意屏幕和应用程序类型,然后单击“创建”。
将显示您的客户端 ID 和密码。
有关更详细的说明,请访问 Google 的官方 OAuth 2.0 设置指南。
转到您的 GitHub 设置。
点击“开发者设置”。
单击“OAuth 应用程序”,然后单击“新 OAuth 应用程序”。
填写所需信息并点击“注册申请”。
客户端 ID 和密码将显示在下一页上。
您可以在 GitHub OAuth 文档中找到更详细的说明。
转至 Discord 开发者门户。
单击“新应用程序”。
为您的应用程序命名并单击“创建”。
转到应用程序设置中的“OAuth2”页面。
在“重定向”下,添加您的重定向 URI。
单击“保存更改”。
客户端 ID 可以在“一般信息”页面上找到,密钥可以在“OAuth2”页面上找到。
有关更详细的说明,请访问 Discord OAuth2 文档。
启用非本地身份验证
.env 文件包含多个用于提供程序客户端 ID 和机密的占位符。将这些占位符替换为从相应提供商处获取的密钥:
- 对于 Google,请将 GOOGLE_CLIENT_ID 和 GOOGLE_CLIENT_SECRET 的“***”占位符替换为从 Google 获取的客户端 ID 和密钥。
- 对于 GitHub,将 GITHUB_CLIENT_ID 和 GITHUB_CLIENT_SECRET 的“***”占位符替换为从 GitHub 获取的客户端 ID 和密钥。
- 对于 Discord,请将 DISCORD_CLIENT_ID 和 DISCORD_CLIENT_SECRET 的“***”占位符替换为从 Discord 获取的客户端 ID 和密钥。
进行这些更改后,您的应用程序将设置为对这些提供商使用 OAuth 身份验证。要从本地身份验证切换到 OAuth 身份验证,请将 .env 文件中的 NEXTAUTH_URL 变量更改为托管应用程序的 URL。这不能是本地主机。