- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在我的本地 circleci 上配置一个作业(使用 docker 执行器,图像:google/cloud-sdk:latest
),该作业需要解密 sops gcp kms 加密文件。我已经为 gcp kms 解密服务设置了一个谷歌服务帐户(我可以运行脚本,通过 circleci 作业运行,通过服务帐户解密 sops 文件在本地成功运行,所以我知道服务帐户设置是有效的) .以下是我的工作方式。
1- 我对 google 服务帐户 json 文件进行 base64 编码:base64 path/to/service_aacount_file.json
2- 我运行 circleci 作业,在 circleci 上设置 GCLOUD_SERVICE_KEY 环境变量,使用上一步的 base64 编码内容:circleci local execute --env GCLOUD_SERVICE_KEY='<Base64EncodedServiceAccountJsonFileContent>' --job '<MyJob>'
3- 这是我的 circleci 配置:
- run:
name: <MyJob>
command: |
apt-get install -y docker
apt-get install -y sudo
cd $(pwd)/path/to/jobcode
echo $GCLOUD_SERVICE_KEY | base64 -d > ${HOME}/<MyGoogleServiceAccountJsonFile.json>
export GOOGLE_APPLICATION_CREDENTIALS="${HOME}/<MyGoogleServiceAccountJsonFile.json>"
gcloud auth activate-service-account --key-file ${HOME}/<MyGoogleServiceAccountJsonFile.json>
echo $GOOGLE_APPLICATION_CREDENTIALS
ls -halt $GOOGLE_APPLICATION_CREDENTIALS
cat $GOOGLE_APPLICATION_CREDENTIALS
sudo ./<RunJob.sh>
4- 执行作业时出现以下错误:
Failed to get the data key required to decrypt the SOPS file.
Group 0: FAILED
projects/<MyProject>/locations/<MyLocation>/keyRings/<MySopsKeyring>/cryptoKeys/<MyKey>: FAILED
- | Cannot create GCP KMS service: google: could not find
| default credentials. See
| https://developers.google.com/accounts/docs/application-default-credentials
| for more information.
Recovery failed because no master key was able to decrypt the file. In
order for SOPS to recover the file, at least one key has to be successful,
but none were.
5- 此外,从控制台输出:
a- 我可以看到服务帐户已成功激活:Activated service account credentials for: [<MyServiceAccount>@<MyProject>.iam.gserviceaccount.com]
b- GOOGLE_APPLICATION_CREDENTIALS 环境变量设置为服务帐户 json 的路径:/path/to/service_account.json
c- 上面的文件已经正确base64解码并包含有效的json:
{
"client_x509_cert_url": "<MyUrl>",
"auth_uri": "<MyAuthUri>",
"private_key": "<MyPrivateKey>",
"client_email": "<ClientEmail>",
"private_key_id": "<PrivateKeyId>",
"client_id": "<ClientId>",
"token_uri": "<TokenUri>",
"project_id": "<ProjectId>",
"type": "<ServiceAccount>",
"auth_provider_x509_cert_url": "<AuthProviderCertUrl>"
}
6- 我尝试过的其他一些事情:
a- 尝试在环境变量中设置 google 项目名称,但仍然出现同样的错误。
b- 尝试将 GOOGLE_APPLICATION_CREDENTIALS 设置为文件内容,而不是文件路径,但结果还是一样。
c- 尝试通过提供不带引号或单引号的文件路径来设置 GOOGLE_APPLICATION_CREDENTIALS,但仍然没有区别。
d- 尝试通过执行 echo 'export GOOGLE_APPLICATION_CREDENTIALS=path/to/service_account.json' >> $BASH_ENV
来设置 $BASH_ENV , 但同样的错误
请帮忙。
最佳答案
五个可行的选项:
gcloud auth application-default login
echo 'export GOOGLE_APPLICATION_CREDENTIALS=/tmp/service-account.json' >> $BASH_ENV
{ echo 1;回声 1;回声; } | gcloud 初始化
gcloud components update
这有时会在 sdk 过时时起作用。配置集项目 [PROJECT_NAME]
您还可以使用以下方式检查事件帐户:gcloud auth list
关于google-cloud-platform - 尽管 GOOGLE_APPLICATION_CREDENTIALS 已成功设置为服务帐户 json,但 Sops 无法 gcp kms 解密 Circleci 上的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60137075/
我在 .sops.yaml 中找不到如何将 Azure Keyvault 与 Mozilla SOPS 结合使用的示例。我在网上看到并在此处提供的所有示例 https://github.com/moz
我在阅读时有两个问题 DICOM标准: 在 DICOM 文件中,(0002 0003)“媒体存储 SOP 实例 UID”和 (0008 0018) “SOP Instance UID”,它们是一样的吗
import java.util.HashSet; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; impor
过去 5 个月我一直在开发 gwt 应用程序,现在是第三方人员开始使用它的时候了。为了准备这个,他们中的一个在反向代理后面设置了我的应用程序,这立即导致浏览器的同源策略出现问题。我猜响应 header
SOP(同源策略)的真正含义是什么? 我知道这意味着来自一个来源的 Javascript 代码无法访问来自另一个来源的资源。但是“资源”这个词到底是什么意思呢?例如: Javascript 代码可以从
我在维基百科上读到了同源政策的含义,但不明白它是如何运作的。我确实知道它会阻止我网站上的 javascript 与单独网站上的脚本进行交互,但这到底是什么意思? 最佳答案 如果您的脚本 (JS) 尝试
我写了一个html游戏,我将html文件打包在ios应用程序中。 ios 应用程序只会从磁盘加载页面并将其呈现在 UIWebView 中。 此设置是否适用同源策略限制(假设是)? 例如,我希望游戏能够
我目前正在开发一个 Web 应用程序(在 golang 中),它将用作其他内部应用程序(在 docker 容器中运行)的主要门户。这个 web 应用程序应该简单地提供一个 HTML 页面,其中导航栏位
我将如何推导函数 getField :: (Generic a, HasDatatypeInfo a) => Proxy (name :: Symbol) -> a -> b 使用类型级字符串( Sy
当我尝试将 Paho MQTT javacrript 与 Mosquito MQTT websockets 一起使用时,只要我用来服务页面的 Web 服务器和 Mosquito 位于同一服务器(同一来
所以我尝试使用我必须为学校编写的代码: public class QuizScore { private int qs[]; EasyReader d = new EasyReader(); publ
同源策略阻止我从另一个网站(经许可)获取我需要的 JSON 数据。我看到一个人正在使用 JsonpRequestBuilder 解决这个问题,但我不确定这是否是适合我的最佳解决方案。我想到的唯一其他选
在 Chrome 扩展中,我试图让 gmail 撰写正文内容。 偶尔会跳出一个错误,但不会妨碍它的工作。 这是作为内容脚本运行的。我相信权限在这里不是问题,因为当缺少权限时,错误会有所不同并且操作会被
我想在我的 Windows 机器上开发 JavaScript。您知道我可以关闭同源策略以便在本地开发的浏览器吗? Firefox 将是最佳选择。 或者,如果您知道我可以用于 SOAP/WSDL 站点的
是否有模仿 SYB 的 generics-sop/everywhere 行为的 mkT 示例? 我正在尝试做的,但没有看到如何成功地做到这一点,是将 everywhere (mkT fixupSymb
我目前通过 Helm chart 在我的集群中安装了 Flux 和 Helm 操作符。通量部署正在监控一个 git 存储库,其中我有一个 .flux.yaml,我通过通量部署 git-path 传递文
我对同源策略 (SOP) 感到困惑。 例如,http://bad.com/bad.html与 bad.js ,和http://good.com/good.html与 good.js 。我在 Chrom
This is supposed to have a Processor, Expression, Sum, Number and Product class. Processor execute E
我看过一些关于这个主题的帖子。 由于某种原因,从 JavaScript 到 Picasa(即 XHR 基础、jQuery/AJAx 等)的 POST 调用由于 SOP(同源策略)而失败。 我确实进行了
我正在做 XSHM(跨站点历史记录操作)项目。 我试图展示使用 XSS(跨站脚本)如何违反 SOP。我已经在沙箱 XP 机器内设置了一个本地主机(WAMP)服务器(必须符合道德规范),并使用一个简单的
我是一名优秀的程序员,十分优秀!