1个不稳定版本
0.1.0 | 2023年9月6日 |
---|
#1106 在 游戏开发
30KB
513 行
bevy-firebase-auth
Bevy的Google Firebase Auth集成。
目前仅实现Google + GitHub OAuth2。未来将支持所有Firebase认证方法。
警告
这个插件尚未经过实战测试,如果你不小心,你会信任这个插件并使用API密钥来产生费用并访问你的数据。
你的密钥要么嵌入在分发的二进制文件中,要么作为单独的文件提供,但无论哪种方式,都需要基本上是公开的。请确保你的GCP已做好准备。
安装
cargoadd bevy-firebase-auth
依赖项
需要 bevy-tokio-tasks
以使tonic包工作。移除依赖项是一个待办事项,我只是还不够熟悉Rust。
版本兼容性
针对Bevy 0.11.0
用法
设置
创建一个Firebase项目,并记下你的项目ID和客户端ID以及密钥。
将客户端密钥放置在项目根目录下的 keys.ron
文件中,并将 keys.ron
添加到你的 .gitignore
。
keys.ron
应该格式如下
{
Github: Some(("YOUR-GITHUB-CLIENT-ID","YOUR-GITHUB-CLIENT-SECRET")),
Google: Some(("YOUR-GOOGLE-CLIENT-ID-STRING.apps.googleusercontent.com","YOUR-GOOGLE-CLIENT-SECRET"))
}
这个结构可能会在下一个版本中改变,所以我建议不要围绕它编写任何工具。
App::new()
// PLUGINS
.add_plugins(DefaultPlugins)
// Dependency for firestore RPC to work
.add_plugins(bevy_tokio_tasks::TokioTasksPlugin::default())
.add_plugins(bevy_firebase_auth::AuthPlugin::default());
密钥+密钥
Google喜欢将必需的密钥放置在各个地方,需要几个步骤来设置项目。以下是一个简要的说明,以获取使用插件所需的所有内容。
创建Firebase项目
访问 此链接 并创建一个项目。
项目ID,API密钥
创建项目后,转到项目设置(在Firebase项目控制台的设置齿轮中),并记下项目ID和Web API密钥。
客户端ID,客户端密钥
我们需要创建一个标识符来验证应用程序与谷歌后端。前往这里,在左上角的下拉菜单中选择您的项目,并创建一个新的OAuth2凭证。给它起一个易于识别的名字,并在生成后记下客户端ID和客户端密钥。
注意:我仅在桌面客户端上进行过测试。
如果需求存在,我将添加GitHub和其他登录方法的说明,如它们可用,请在GitHub上创建一个问题:)
许可协议
Apache 2.0或MIT,用户自行决定。
依赖项
~24–41MB
~648K SLoC