- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从该网络外部连接到在公司网络内部的计算机上运行的 self 管理的 Gitlab 服务器。
上下文
要访问此网络,用户需要通过反向代理并通过公司的 Azure AD 和 SAML 身份验证登录(下图)。对于 Gitlab Web 应用程序(图中的左侧分支)来说,这种方法效果很好:尝试访问网络时,系统会提示用户使用基于浏览器的 SSO。然后,生成的 token 将重新用于对 Gitlab 实例的用户进行身份验证,其中还设置了通过 Azure OAuth 的身份验证。
问题
问题在于使用 git cli 与 git 服务器交互(推送、 pull 等)。重定向到 SSO 会触发以下错误:
> git push origin master
fatal: unable to update url base from redirection:
asked for: https://gitserver.companyurl.com/user/repo.git/info/refs?service=git-receive-pack
redirect: https://login.microsoftonline.com/<azure_tenant_id>/saml2?SAMLRequest=<base64encoding of SSO portal>
问题
是否可以配置 git,以便在例如以下情况时触发基于浏览器的 SSO: git push,并且上述重定向不会引发异常?具体来说,以下内容是理想的:
git推送
git Push
请求已成功完成我知道这在没有浏览器的 headless 系统上不起作用,这是可以接受的限制。
最佳答案
你所要求的是不可能的。 Git 没有办法生成浏览器(因为甚至不需要安装浏览器),即使有,它也没有办法从它生成的浏览器中提取任何 token 或凭据。
但是,如果您可以使其按照您想要的方式调用浏览器,然后发出 token ,您可能会发现自定义凭据助手很有用。有些环境也希望使用 cookie 来实现此目的,Git 可以使用 http.cookiefile
读取 Netscape 格式的 cookie。您还可以使用 http_proxy
环境变量和用户凭据设置标准代理配置,但请注意您的代理正确使用 HTTP/1.1 并且不执行任何过滤,因为损坏的代理会破坏 Git以各种微妙的方式。
我不能代表 GitLab,但我知道 GitHub 也内置了对 SAML SSO 的支持,因此不需要反向代理。在这种情况下,您可以继续使用个人访问 token 或 SSH key 来访问服务器,同时仍然需要 Web 界面的 SSO。
我应该指出,一般来说,在 Git 主机前面使用反向代理来限制访问可能会破坏自动化。您可能希望允许 SSH key 或其他某种方法来防止您的 SAML SSO 破坏与任何用户无关的自动化流程。
关于通过 SAML SSO 进行 Git CLI 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64731848/
我在 PingFederate 中配置了 IDP 发起的 SSO,它显示 SSO 应用端点 为:https://myserver/idp/startSSO.ping?PartnerSpId=sp_id
我在 PingFederate 中配置了 IDP 发起的 SSO,它显示 SSO 应用端点 为:https://myserver/idp/startSSO.ping?PartnerSpId=sp_id
我正在尝试使用我的 Office 加载项实现 SSO。为此,我使用 Office IdentityAPI,它要求您拥有一个应用程序 ID URI,该 URI 有一些限制(例如您拥有该域并且正在验证该域
谁能向我解释一下SP发起的SSO和IDP发起的SSO之间的主要区别是什么,包括哪一个是联合实现单点登录的更好解决方案与 ADFS + OpenAM 联盟? 最佳答案 IDP 启动 SSO 来自 Pin
我正在将 Azure Active Directory 配置为 Salesforce 的 SSO 身份验证提供程序。我已经在 Azure 中注册了该应用程序。当我尝试在 Azure 中为注册的应用程序
我正在将 Azure Active Directory 配置为 Salesforce 的 SSO 身份验证提供程序。我已经在 Azure 中注册了该应用程序。当我尝试在 Azure 中为注册的应用程序
我们将 AWS 控制台联合到我们的 Shibboleth IdP (SAML)。 AWS CLIv2 是否支持使用联合账户通过 SSO 访问 CLI?如果是这样——我在哪里可以找到下面链接中列出的“S
我在使用 Jira 插件时遇到多个问题:“Azure Active Directory 单点登录 (SSO) 与 Microsoft 的 JIRA SAML SSO 集成”。 问题: 安装插件时会出现
使用 IdentityServer3、Kentor.AuthServices 0.19(带有 OWIN 中间件)和标准 MVC 4 WebApi 2 应用程序,我们按照 https://github.
有关单点登录(SSO)之前有写过两篇文章 一文读懂 JWT! 看完这篇不能再说不懂SSO原理了! 如果说XXL-JOB你可能并不陌生,它是非常火爆的一个分布式任
我正在为 使用 WSO2 身份服务器SSO 与 saml 在我的演示应用程序中。 我的要求是用户应该向服务提供商登录页面提供登录凭据,而不是身份提供商页面。 出于同样的目的,我关注了 Asela 的以
我对如何使用 SiteMinder 和 OpenSSO 管理以下场景感兴趣 给定两个 Web 应用程序,并强制要求在它们之间使用 SSO。应用程序 A 是一个简单的应用程序,仅需要用户名/密码组合。应
我有一个现有的Wordpress网站。计划是使用cakePHP框架重建站点。由于时间限制,我想一次替换一个Wordpress网站的各个部分。这意味着两个应用程序将并排运行一段时间。我需要使用Wordp
我想在两个网络应用程序之间执行单点登录。这是我的场景: 应用程序 A 和 B(均提供 RESTFUL API)。 应用 B 使用基于表单的身份验证,我无法对应用 B 进行任何修改。此外,应用 A 和应
我是 Cypress 和 JS 的新手。如果未登录,我正在测试的应用程序将重定向到 stub IDP 页面。该应用程序也支持基本身份验证。我在测试中所做的就是cy.visit("https://use
我想为我的自定义 SPA 添加 Azure AD 身份验证。我已在 Azure 门户的应用程序注册中注册了该应用程序。 当我使用 API 调用此“APP”时,我可以获得登录屏幕和 MFA,但登录到 A
我正在尝试设置现有的 ASP.NET Web 应用程序以使用 SAML 或 OAUTH 2.0 对 Azure Active Directory 帐户进行身份验证。教程仅向我展示 MVC 中的示例代码
我正在尝试在基于 spring 的 Web 应用程序中实现一个简单的 SSO 功能。场景: 我有一个主应用程序 Application1 和一个辅助应用程序 2。两者都有自己的登录机制(使用 spri
我已经搜索了这个问题的答案,但是找不到任何答案。 我有一系列要使用同一Facebook应用程序的iOS应用程序。 SSO与我创建和测试的第一个应用程序完美配合。但是其他所有方法都失败,并返回了unkn
我发现 NTLMAuthenticationFilter.java 中有以下代码用于露天共享 SSO 身份验证: Response remoteRes; if (cachedNtlm)
我是一名优秀的程序员,十分优秀!