我想知道他们在Github Enterprise(http://enterprise.github.com)解决方案中使用了哪些类型的保护.由于我没有一家可能会购买它的公司,我觉得撒谎并不舒服,只是为了得到一份副本并试着亲自看看.
但我真的很想知道他们用什么样的策略来保护他们提供的代码,因为它可能被任何其他rails应用程序使用.
这个问题不是"如何保护我的Ruby代码",而是他们如何保护整个设备,而不仅仅是Ruby代码,而是更多依赖服务,在ubuntu linux服务器上运行.
我有一些理论可以帮助:
我在API文档中找不到任何内容,只有企业版提到您可以使用staff-tools检索审计日志.
任何的想法?我很乐意定期检查审核日志并将新条目发送到我们的IM频道(ChatOps).
提前致谢,
我正在尝试克隆一个远程GitHub企业存储库,并在我的Jenkins配置中将我的远程repo的URL添加到Git插件后遇到以下错误:
hudson.plugins.git.GitException: Command "/usr/bin/git -c askpass=true fetch --tags --progress https://github.com/myUsername/myProject.git refs/heads/*:refs/remotes/origin/*" returned status code 128: stdout: stderr: fatal: unable to access https://github.myOrg.com/myUsername/myProject.git/': Failed to connect to github.com port 443: Operation timed out at...
Run Code Online (Sandbox Code Playgroud)
配置细节和我尝试过的事情:
问题:
我已经对此进行了几天的故障排除,目前还不确定我的问题是什么!请帮忙!!
我在 [公司托管] GitHub 企业站点中有一个存储库,我需要使用 CodePipeline 服务将其集成到 AWS 中的 CI/CD 管道中。然后,CodePipeline 服务将与在 EC2 实例中运行的 Jenkins 服务连接。我正在按照此AWS 文档执行此操作。
请注意,这是一个企业 GitHub 存储库,不在 GitHub.com 上托管。
我无法在“创建管道”向导中连接到 GitHub Enterprise 站点。选择 GitHub 作为源只会让我连接到 GitHub.com,而不是我组织的企业站点。
如何连接到企业 GitHub 站点,以便我可以将存储库添加为我的代码管道的源?
github amazon-web-services github-enterprise aws-codepipeline
我正在尝试创建 GitHub 操作,但我的存储库中不存在“操作”选项卡:

此 GitHub 文档页面建议导航到“设置”选项卡,然后从左侧边栏中选择“操作”并启用它们。

我的下一个想法是我的组织禁用了操作,因此我按照此 GitHub 文档页面上有关管理组织操作的步骤进行操作。但我再次转到“您的组织”->“设置”并在左侧边栏中查找“操作”,却找不到它。

然后我想也许我缺少管理员权限,所以我检查了我的组织下的“人员”选项卡,我是一个“所有者”,我的研究告诉我它与管理员相同。

所以我们到了。关于为什么我的组织中到处都缺少“操作”选项卡,您有什么想法吗?
如果我们在公司内部使用GitHub Enterprise并且启用了私有模式,那么公共和私人仓库之间有什么不同?
没有真正的指南,这是现有的文档:
https://www.jetbrains.com/help/rider/GitHub.html
它已经过时了。
Rider 实际上希望您提供一个令牌:
这似乎不是个人令牌。
还有一个用于生成令牌的按钮不起作用。
我假设“服务器”字段应该位于
https://github.com/<SERVERNAME>
Run Code Online (Sandbox Code Playgroud)
或者
https://github.com/organizations/<SERVERNAME>
Run Code Online (Sandbox Code Playgroud)
格式。
但我一生都无法弄清楚从哪里获取服务器的令牌。
我再次生成了一个 github 个人用户令牌,但是这个令牌被 github 企业登录拒绝。
就像个人用户设置一样,Github 企业设置有一个“开发者设置”选项卡:
但这个选项卡似乎有不同的用途,您创建一个要在“github应用程序市场”上浏览的“应用程序”,我确实创建了这个,但这是可以访问的操作的完整列表:
这些都不涉及给我一个令牌。
这既不是可以通过暴力在选项中找到的东西,也不是谷歌产生结果的东西。
我需要帮助。
更新:
更多的搜索引导我找到这个文档:https://docs.github.com/en/actions/reference/authentication-in-a-workflow#modifying-the-permissions-for-the-github_token
似乎他们正在谈论的 GITHUB_TOKEN 是我感兴趣的东西。在文档的顶部,信息气泡声称此功能不提供给 Github 免费用户?
这是怎么回事?
对于 GitHub 和 Jet Brain 来说,这将是一次糟糕的沟通。用户如何理解这一点?为什么在直接从具有 SSH 密钥的终端克隆存储库时,Rider 希望强制您使用此付费功能来与 github enterprise 集成?
这是荒谬的。至少通过 SSH 添加带有 github 登录的个人存储库应该是一个可用的功能。
我有一个带有 shell 脚本的存储库,并希望在自述文件中输入单个命令来运行它,例如:
bash <(curl -L <path_to_raw_script_file>)
Run Code Online (Sandbox Code Playgroud)
GitHub Enterprise 的原始文件 url 如下所示:https://raw.github.ibm.com/<user>/<repo>/<branch>/<path_to_file>?token=<token>,其中对于<token>文件来说是唯一的,并在通过存储库中的原始按钮或?raw=true在 url 中带有后缀访问该文件时生成。
问题是,令牌在几天后/更新文件时就会失效,并且我不想在每次令牌失效时更新提到的命令。有办法处理吗?
我知道用户有一种方法可以创建个人令牌并使用它从他运行脚本的机器登录到 github,但我想让它尽可能简单。
我正在考虑自动生成原始文件 url(因为阅读 github 上的自述文件的用户肯定可以访问位于同一存储库中的脚本),但我不确定这是否可能。
我遇到了一种奇怪的情况,我想知道如何推送到仓库。
我有 2 个仓库,一个是公开的,另一个是在公司的 Github Enterprise 下。嗯,我刚刚从企业克隆了一个 HTTPs 存储库链接,一切顺利,通常不需要任何凭据。
然而,当我意识到我也可以推送时,我开始想知道凭据存储在哪里。我检查了.git/config
remote "origin"]
url = https://mygithub.blablacompany.com/blablaUsername/blabla.git
fetch = +refs/heads/*:refs/remotes/origin/*
Run Code Online (Sandbox Code Playgroud)
然后我检查了 git config --list,列出了一堆其他存储库用户名,还:
remote.origin.url=https://mygithub.blablacompany.com/blablaUsername/blabla.git
remote.origin.fetch=+refs/heads/*:refs
branch.master.remote=origin
branch.master.merge=refs/heads/master
Run Code Online (Sandbox Code Playgroud)
然后我检查./git-credentials主文件夹中是否存在。不,事实并非如此。我在本地驱动器上找遍了,不存在。
然后我检查了 Windows 的 git 凭据管理器是否存在:
> git credential-manager version
> Git Credential Manager for Windows version 1.6.1
Run Code Online (Sandbox Code Playgroud)
好的,我假设它存储在 Windows 凭据中。但是当我转到“用户凭据”时,我没有看到任何记录,也没有看到任何有关 git 的信息。
我尝试运行git config credential.helper它返回:
!github --credentials
Run Code Online (Sandbox Code Playgroud)
所以我假设感叹号后面的所有内容都是 shell 命令。好的,所以我尝试检查以下全局配置/Users/Me:
有一个,但它完全是为了另一个非企业回购。
那么我怎样才能推送到这个仓库呢?如何追踪密码/ssh 密钥的存储位置?
我想访问我的 Github Actions 工作流程 YAML 中的部署环境名称。这是一个例子:
jobs:
example:
runs-on: ubuntu-latest
environment: "foobarbaz"
...
steps:
...
- name: Terraform Check Format
id: terraform-fmt
# what should I use here instead of "????" to get "foobarbaz"?
run: terraform -chdir=terraform/stacks/${{ ???? }}/${{ matrix.stack }} fmt -check
Run Code Online (Sandbox Code Playgroud)