Hasura Backend Plus环境变量配置指南从基础到高级的完整清单【免费下载链接】hasura-backend-plusAuth and Storage for Hasura. The quickest way to get Auth and Storage working for your next app based on Hasura.项目地址: https://gitcode.com/gh_mirrors/ha/hasura-backend-plusHasura Backend Plus是为Hasura提供身份验证和存储功能的快速解决方案通过环境变量配置可以灵活定制其行为。本文将详细介绍从基础到高级的环境变量设置方法帮助新手和普通用户轻松完成配置。快速开始基础环境变量设置核心配置项Hasura Backend Plus的基础运行依赖以下核心环境变量建议在部署前优先配置PORT服务器端口默认值为Express.js的默认端口HOST服务器主机地址详细配置可参考Express文档HASURA_ENDPOINTHasura GraphQL端点地址必填项HASURA_GRAPHQL_ADMIN_SECRETHasura管理员密钥用于执行管理员操作SERVER_URLHasura Backend Plus运行的服务器URL用于生成邮件模板链接和OAuth回调地址基础配置示例PORT3000 HOST0.0.0.0 HASURA_ENDPOINThttp://hasura:8080/v1/graphql HASURA_GRAPHQL_ADMIN_SECRETyour-admin-secret SERVER_URLhttps://your-domain.com身份验证配置保护你的应用用户认证基础设置身份验证模块的核心环境变量控制用户注册、登录和权限管理AUTH_ENABLED是否启用所有身份验证路由默认值trueAUTH_LOCAL_USERS_ENABLED是否允许使用邮箱密码或魔法链接注册登录默认值trueVERIFY_EMAILS是否要求用户验证邮箱默认值falseAUTO_ACTIVATE_NEW_USERS新用户是否自动激活默认值true。设为false时需通过邮件验证激活密码安全设置增强账户安全性的关键配置MIN_PASSWORD_LENGTH密码最小长度默认值3建议生产环境设置为8以上HIBP_ENABLED是否检查密码是否在Pwned Passwords数据库中默认值falseLOST_PASSWORD_ENABLED是否启用密码找回功能默认值false角色与权限控制DEFAULT_USER_ROLE注册用户的默认角色默认值userDEFAULT_ANONYMOUS_ROLE匿名用户的默认角色默认值anonymousALLOWED_EMAIL_DOMAINS限制注册邮箱域名默认允许所有域名。示例tesla.com,ikea.seJWT配置安全的身份验证令牌JWT设置控制身份验证令牌的生成和验证JWT_KEYJWT签名密钥建议使用长随机字符串。示例some-long-random-string-uh8ga7sgd8asgd7asgd89asijduyvtasfd789ujioasdubvtf76a8ys9udiojuauvytdf768audJWT_ALGORITHM加密算法可选RS256、HS256等推荐HS512JWT_EXPIRES_IN访问令牌过期时间分钟默认值15JWT_REFRESH_EXPIRES_IN刷新令牌过期时间分钟默认值4320030天JWT_CLAIMS_NAMESPACEHasura声明命名空间默认值https://hasura.io/jwt/claims自定义JWT字段通过JWT_CUSTOM_FIELDS可以将用户表中的自定义字段添加到JWT令牌中JWT_CUSTOM_FIELDScompany_id,department配置后JWT将包含这些自定义字段作为Hasura会话变量如x-hasura-company-id。存储配置管理文件上传存储模块配置控制文件上传和S3集成STORAGE_ENABLED是否启用存储功能默认值trueS3_BUCKETS3存储桶名称必填项S3_ACCESS_KEY_IDS3访问密钥IDS3_SECRET_ACCESS_KEYS3密钥S3_ENDPOINTS3服务端点适用于兼容S3的存储服务S3_SSL_ENABLED是否启用SSL连接默认值true邮件配置启用事务性邮件要启用账户激活、密码重置等邮件功能需配置SMTP参数EMAILS_ENABLED是否启用邮件功能默认值falseSMTP_HOSTSMTP服务器主机名SMTP_PORTSMTP端口默认值587SMTP_USERSMTP用户名SMTP_PASSSMTP密码SMTP_SENDER发件人邮箱地址SMTP_AUTH_METHOD认证方式默认值PLAINSMTP_SECURE是否使用安全连接默认值trueOAuth集成第三方登录配置Hasura Backend Plus支持多种OAuth提供商以Google为例GOOGLE_ENABLED是否启用Google登录默认值falseGOOGLE_CLIENT_IDGoogle应用客户端IDGOOGLE_CLIENT_SECRETGoogle应用客户端密钥类似配置适用于GitHub、Facebook、Twitter、LinkedIn等其他提供商只需将前缀替换为对应提供商名称如GITHUB_、FACEBOOK_。高级配置安全与性能优化安全增强COOKIE_SECRET用于加密Cookie的密钥COOKIE_SECURE是否仅通过HTTPS发送CookieCOOKIE_SAME_SITECookie SameSite策略可选lax、strict或none默认值laxMFA_ENABLED是否启用多因素认证默认值falseOTP_ISSUEROTP发行者名称默认值HBP速率限制MAX_REQUESTS时间窗口内的最大请求数默认值1000TIME_FRAME时间窗口毫秒默认值90000015分钟配置文件管理推荐使用.env文件管理环境变量项目中可参考以下文件结构组织配置开发环境docker/dev/.env生产环境docker/prod/.env配置变更后需重启服务使设置生效。完整的环境变量列表可参考官方文档docs/docs/environment-variables.md。常见问题解决配置不生效确保环境变量名称拼写正确区分大小写检查是否使用了正确的文件路径确认服务已重启以应用新配置邮件发送失败验证SMTP服务器信息是否正确检查防火墙设置是否阻止了SMTP连接尝试禁用SMTP_SECURE设为false测试连接权限问题检查JWT配置是否正确包含所需的角色信息确认HASURA_GRAPHQL_ADMIN_SECRET是否正确设置验证ALLOWED_USER_ROLES是否包含所需角色通过合理配置这些环境变量你可以充分发挥Hasura Backend Plus的功能构建安全、高效的应用后端。如需进一步定制可参考项目中的配置文件src/shared/config/获取更多细节。【免费下载链接】hasura-backend-plusAuth and Storage for Hasura. The quickest way to get Auth and Storage working for your next app based on Hasura.项目地址: https://gitcode.com/gh_mirrors/ha/hasura-backend-plus创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考