我正在尝试使用服务器上的Ruby为Firebase生成JWT令牌.在3.0之前,我们使用了令牌生成器,但升级后它停止了工作.我用下面的代码得到的令牌给出了一个错误:
自定义令牌对应于不同的受众.
我无法找到任何意义.
private_key = OpenSSL::PKey::RSA.new <<-PEM
-----BEGIN PRIVATE KEY-----
..redacted..
-----END PRIVATE KEY-----
PEM
service_account_email = 'redacted@redacted.iam.gserviceaccount.com'
now_seconds = Time.now.to_i
payload = {
iss: service_account_email,
sub: service_account_email,
aud: 'https://identitytoolkit.googleapis.com/google.identity.identitytoolkit.v1.IdentityToolkit',
iat: now_seconds,
exp: now_seconds + (60 * 60),
uid: self.id.to_s,
debug: true,
claims: {
userId: self.id,
slug: self.slug,
username: self.username,
avatar: self.profile.avatar.url,
group: self.group,
debug: true
}
}
JWT.encode payload, private_key, 'RS256'
Run Code Online (Sandbox Code Playgroud)
谢谢
小智 6
我也收到此错误,是因为我使用了与Firebase项目无关的服务帐户。在firebase项目下使用新密钥创建新的服务帐户后,它开始工作。
要创建服务帐户,您可以按照以下说明进行操作:https : //firebase.google.com/docs/server/setup
| 归档时间: |
|
| 查看次数: |
5281 次 |
| 最近记录: |