【问题标题】:Bigtable authentication in javaJava中的Bigtable身份验证
【发布时间】:2015-12-01 11:58:54
【问题描述】:

我正在寻找一种在 Bigable 中进行身份验证的替代方法。 默认方法涉及环境变量,这与我有关。

我找到了GoogleCredential 类。它可以使用fromStream读取json密钥文件,但是如何使用GoogleCredential的新实例。 没有办法setApplicationDefault()。我需要以某种方式覆盖它。

HBase 代码对GoogleCredential 一无所知。

【问题讨论】:

标签: java authentication bigtable google-cloud-bigtable


【解决方案1】:

编辑 2016 年 12 月 6 日

默认身份验证现在需要gcloud auth application-default login 才能使用您的用户帐户进行 API 调用。你也可以这样做:

$ gcloud iam service-accounts create my-account $ gcloud iam service-accounts keys create key.json --iam-account=my-account@my-project.iam.gserviceaccount.com $ export GOOGLE_APPLICATION_CREDENTIALS=key.json $ ./my_applicaiton.sh

旧文本

对于大多数情况,默认身份验证就足够了。如果您已经完成了 gcloud init 或它的前身 gcloud auth login,那么通常应该就足够了。 (编辑 - gcloud beta auth application-default login 现在用于 API 访问)。 在某些特殊情况下它不会出现,例如,如果您在 Docker 容器中本地运行。那么您的默认身份验证将无法正确设置,您需要设置GOOGLE_APPLICATION_CREDENTIALS

为了完整起见,如果您正在进行一些跨项目活动,也可以在您的hbase-site.xml 文件中设置google.bigtable.auth.json.keyfile 键,但这应该非常少见。

【讨论】:

  • hbase-site.xml 属性正是我所寻找的。它的值是对 FileInputStream 的馈送,因此可以使用相对路径。
猜你喜欢
  • 1970-01-01
  • 2017-04-20
  • 1970-01-01
  • 2018-11-21
  • 2016-10-03
  • 1970-01-01
  • 2011-11-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多