问题标签 [app-secret]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 为什么秘密管理工具 SecretHub 可以在本地工作,但不能在 heroku 生产中工作?
我决定为 Heroku 托管的 node.js 服务器实现一个秘密管理服务 ( secrethub.io )。
它的安装过程如下:
(然后在您注册后获得证书)
然后将主启动脚本调整为:
现在,当我在本地运行应用程序时,npm run start
一切都很好,服务器运行正常,注入了秘密,一切都很好。但是当我部署到 Heroku 时,应用程序在启动脚本上立即崩溃:
server@1.0.0 start /app 2020-09-28T22:42:08.353088+00:00 app[web.1]: > secrethub 运行 -- nodemon server.js 2020-09-28T22:42:08.353088+00:00 app [web.1]:2020-09-28T22:42:08.469775 + 00:00 app [web.1]:遇到错误:处理模板文件'secrethub.env'时出错:找不到凭据文件。转到https://signup.secrethub.io/以创建一个帐户或运行
secrethub init
以使用此机器上已经存在的帐户。(secrethub.credential_not_exist) (run.template_parsing_failed) 2020-09-28T22:42:08.484159+00:00 app[web.1]: npm ERR!代码 ELIFECYCLE 2020-09-28T22:42:08.484663+00:00 app[web.1]: npm ERR!错误号 1 2020-09-28T22:42:08.493367+00:00 应用程序 [web.1]:npm 错误!aflare-stripe@1.0.0 开始:secrethub run -- nodemon server.js
2020-09-28T22:42:08.493885+00:00 应用程序 [web.1]:npm 错误!退出状态 1 2020-09-28T22:42:08.494399+00:00 app[web.1]: npm ERR! 2020-09-28T22:42:08.494840+00:00 应用程序 [web.1]:npm 错误!aflare-stripe@1.0.0 启动脚本失败。2020-09-28T22:42:08.495292+00:00 应用 [web.1]: npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。2020-09-28T22:42:08.515466+00:00 app[web.1]: 2020-09-28T22:42:08.516772+00:00 app[web.1]: npm ERR!此运行的完整日志可在以下位置找到:2020-09-28T22:42:08.517179+00:00 app[web.1]: npm ERR!
/app/.npm/_logs/2020-09-28T22_42_08_498Z-debug.log
就像我说的我已经注册了一切。有人知道部署到 Heroku 和使用秘密管理服务的任何问题吗?
google-apps-script - 手动设置用户绑定属性
我正在编写一个脚本,它需要存储一个 API 密钥。在旧编辑器中,有一个选项可以直接从编辑器的 UI 中设置用户属性(同时已被删除),而我在新编辑器中看不到任何类似的选项。我看到了多个答案,详细说明了如何通过电子表格的 UI 或其他“挑剔”的方式来设置它们。是否可以直接通过脚本 UI 设置该属性?
c# - 如何在构建时将用户机密注入 Xamarin.Forms 中的 AndroidManifest?
我有一个 Xamarin.Forms 项目,其中包含我的应用程序的 Android 版本。
它有一个 AndroidManifest.xml 文件,必须使用包含秘密 API 密钥的元数据标签填充该文件。
我用来dotnet user-secrets
在我的机器上存储那个秘密的 API 密钥。
我要注入的东西是这样的:
<meta-data android:name="com.google.android.geo.API_KEY" android:value="SECRET" />
这需要进入manifest->application
清单中的节点。
我该怎么做呢?
我已经尝试使用编写的自定义 CLI 工具预构建事件,该工具将所需的标签输出到Properties/AndroidManifest.xml
中,但这不正确,因为我的版本控制正在获取更新的清单,这是我不想要的。
另一种选择是将我的标签输出到obj
包含最终AnroidManifest
文件的文件夹中,该文件将在构建后由 android 应用程序使用。
但是我如何访问该文件?PreLinkEvent
在我的 Xamarin.Android 项目中似乎不起作用。
.net-core - 跨平台统一独立敏感数据管理
我正在开发一个由各种隔离的 Web 服务和其他数据门控服务/守护进程(全部用 .net core 3.x 编写)组成的系统。目前,我正在寻找一种统一的方式来管理跨平台的机密/敏感数据(通常是连接字符串)。
计划在各种环境中托管这些服务,例如 windows(作为 windows 服务)、linux(作为 systemd 服务)和 docker...
在当前版本中,我不包括特定的复杂保管库系统(Azure Key Vault、AWS 机密管理器……),因为不同的服务不会被复制,并且应该能够 100% 地在本地运行。
我知道将连接字符串存储到环境变量中是解决这个问题的常用方法(linux和docker都可以)。但是在管理windows服务版本的时候,似乎我们不能为专门的服务指定一个专用的环境变量...
我错过了什么?还有其他/更好的方法吗?
facebook - 暴露的 Facebook 应用程序机密会导致开发者的 Facebook 帐户被黑客入侵吗?
有人声称,由于将他们的 Facebook App Secret 暴露在一个从未实时部署的应用程序上,仅在本地开发中,他们用来生成 Facebook App ID 和 Secret 的 Facebook 帐户被黑客入侵,他们无法访问它。我对这种说法感到困惑。据我所知,App Secret 最多允许获取访问令牌,这些令牌可用于代表应用程序进行 API 调用。如果应用程序本身甚至没有部署在生产环境中,这可能吗?
但我的主要问题是,真的有一种方法可以让某人从该帐户生成的 App Secret 侵入 Facebook 帐户吗?Facebook 本身没有提及这一点:https ://developers.facebook.com/docs/facebook-login/security/#appsecret
asp.net-core - 在生产期间在 ASP.Net Core 3.1 中存储机密
我目前将用户名和密码存储在 appsettings.json 文件中,但是我知道这不是存储这些值的最安全方式。我看过 SecretManager 但从我读到的内容通常用于开发环境(https://docs.microsoft.com/en-us/aspnet/core/security/app-secrets?view=aspnetcore-5.0 &tabs=windows)。我还看到在我的应用程序中添加用户机密是一种选择,但我无权访问它通常存储的文件夹。我正在将应用程序部署到访问受限的服务器。有没有办法可以隐藏 appsettings 文件中的内容,但在运行时仍然可以访问。我还看到我可以使用 Azure Key Vault,但现在这不是一个选项。你有什么建议吗?
c# - 如何在 ASP .NET Core Web 应用程序中向 apsettings.js 添加“密钥”及其“名称”
在 ASP .NET Core Web 应用程序中,我注意到可以将连接字符串放入apsettings.json或secret.json文件中,如下所示:
应用设置.json
秘密.json
而且,它在startup.cs中使用。
问题:
以同样的方式,以下是连接字符串在 ASP .NET Core Web 应用程序中的一个控制器中传递的方式:
博客上传控制器.cs
可以看到我在代码中直接放了“连接字符串”和“AccountKey”(容易受到安全威胁)。任何人都可以像我在上面的例子中放入数据库连接字符串一样放入 apsettings.json 或 Secret.json。
提前致谢。
jenkins - Jenkins(自由式项目)秘文使用参数表达式
我有一个 python 项目,我正在使用 pytest 与 Report Portal 集成。
我从 Jenkins(自由式项目)执行测试。
为了获取报告门户中每个会话的用户名,我需要知道access_token
用户的报告门户。
找到这些后,我为每个用户向 Jenkins 添加了一个秘密文本,其 ID 为用户 Jenkins BUILD_USER_ID
。
接下来,在 Jenkins 配置页面中,我点击了Use secret text(s) or file(s)
Build Environment
然后点击Add and Secret text。
我调用了变量 RP_UUID
。
并将凭据设置为Parameter expression
.
詹金斯给了我一个提示:
有效的参数表达式由包含在 ${ 和 } 中的参数名称组成
我试图将此文件设置为${ BUILD_USER_ID }
,但出现以下错误:
我尝试了各种方法,但似乎现阶段的詹金斯无法识别任何变量名。
知道如何解决这个问题或任何不同的方法吗?
ps
该字段Set Jenkins user build variables
已打勾。
dapr - 以 JSON 为秘密的 Dapr 秘密存储
我有一个 Firebase 私钥,它是一个 JSON 文件,并且想使用服务器上的 Dapr 秘密存储来存储它。但是,使用密钥存储的方式:
我无法使用 Dapr 推荐的方式检索关键数据:
据我了解,秘密值只能是原始类型,如字符串、数字或布尔值。那么有没有办法将秘密值存储和检索为 JSON?