saml 相关问题

安全断言标记语言(SAML)是一种标准,用于根据用户在另一个上下文中的会话将用户登录到应用程序中。

WS-Fed 与 SAML 联盟

SAML 和 WS-Fed 联合协议有什么区别? SAML (Security Assertion Markup Language) 和 WS-Fed (Web Services Federation) 都是用于实现单一服务的协议...

回答 0 投票 0

谷歌 SAML SSO

我正在尝试将 Google SAML SSO 合并到我的 Web 应用程序中,但我无法找到解释如何执行此操作的资源或示例。 我已经关注了谷歌关于 SAML SSO 的文档......

回答 0 投票 0

如何在 .Net Core 应用程序中从 ADFS 获取 saml 令牌

我有一个 .Net 核心微服务。我需要与其他服务交谈以获取数据。但是其他服务支持 SAML 身份验证,他们提供 urls(依赖方,adfs),凭据,证书...

回答 0 投票 0

Rails OAuth 2.0 系统基于 SAML 的身份验证中的会话丢失和空“user_redirect_to”变量

我正在开发基于 OAuth 2.0 on Rails 的身份验证系统。 我使用 Devise gem 来处理用户会话和登录,使用 Doorkeeper gem 来管理 OAuth 2.0 工作流程。除了用户...

回答 0 投票 0

将 windows (kerberos) 身份验证转换为 SAML 并更改用户名

我们有一个带有 SAML 身份验证的基于 Web 的云应用程序。 Azure Active Directory 充当 SAML 身份提供者。我们希望我们公司网络中的某些用户已经是真实的......

回答 0 投票 0

Azure Enterprise 应用程序 SAML SSO,用于现有 Web 应用程序中的附加访问 url

我们正在使用 azure AD 的 Azure Enterprise 应用程序,该应用程序配置了 SAML SSO 以访问在单独租户中构建的 Web 应用程序。 如果我们想为移动访问添加额外的访问 url, 我...

回答 0 投票 0

如何在 requirements.txt 中的包自动安装到 Heroku build 之前运行 pip install package?

我有一个 Python Django 项目,其中主分支自动部署到 Heroku。根据构建日志; 首先,使用构建包,然后安装依赖项,在此包之后...

回答 0 投票 0

跨域单点登录 (SSO) 问题?

最近我遇到了单点登录功能的问题,客户需要在他们的“应用程序生态系统”上使用它。 我有“身份提供者”和“服务提供者”

回答 0 投票 0

ADFS 多信任架构

了解在 SSO 架构中是否可以实现多信任是很有趣的,例如基于 ADFS。 我的意思是以下。 假设我有 ADFS_0 和 ADFS_1(实际上我有 IdentityServe ...

回答 1 投票 0

如何在 Rust 中从 Google 身份验证获取 SAML 断言?

我已将我的 AWS IAM 作为身份提供商连接到 Google,一切都按预期工作。现在我想编写一个 Rust 客户端/桌面应用程序,它可以通过 Google 对用户进行身份验证,并检索 ...

回答 0 投票 0

如何使用 OKTA 作为身份提供者在普通的 ASP.NET 4.5 应用程序中实现 SSO

我有一个普通的 ASP.net 应用程序。我需要在登录屏幕中启用 SSO。我的身份提供者是 OKTA。我们已经从 OKTA 获得了元数据文件,但我不确定如何在我们的

回答 1 投票 0

Keycloak 用户和 AWS 管理的 Grafana 之间的身份验证问题

我已经在 AWS 控制台中安装了 AWS 管理的 Grafana。我已经在带有私有子网的小型 EC2 中安装了 keyclaok(允许安全组入站和出站所有端口)并配置了 Keycloak 的 Re...

回答 0 投票 0

Keycloak 用户与 AWS 管理的 Grafana 之间的身份验证问题

我已经在 AWS 控制台中安装了 AWS 管理的 Grafana。我已经在带有私有子网的小型 EC2 中安装了 keyclaok(允许安全组入站和出站所有端口)并配置了 Keycloak 的 Re...

回答 0 投票 0

带有密钥斗篷的基本 SAML 代理不会重定向回应用程序

我们正在将我们的应用程序从传统的数据库登录转移到 keycloak。旧系统使用 python-saml 包自行处理 SAML 登录。 现在,我们正试图让 keycloak 做...

回答 1 投票 0

如何从我的 Python-Django 项目中获取元数据以实现 SSO?

我有一个 Python-Django 项目,我正在尝试使用他们的 idp 与 C#/.NET 现有网站 SAML 身份验证集成。 我绝对需要生成一个元数据文件给任何人......

回答 0 投票 0

我们可以在 ASP.NET MVC 中使用多种身份验证方法吗

我正在做一个 ASP.NET MVC 项目,我们已经实现了用户名/密码身份验证。我们正在尝试向项目添加 SAML 身份验证 (Azure AD)。那可能吗?这些可以...

回答 0 投票 0

我们可以在.net framework MVC中使用多种身份验证方法吗

我正在做一个 ASP.NET Framework 项目,我们已经实现了用户名/密码身份验证。我们正在尝试向项目添加 SAML 身份验证 (Azure AD)。那可能吗?不能...

回答 0 投票 0

单页应用程序中的 SAML 登录重定向

我有一个 MERN 堆栈 SPA 应用程序,其后端为 ExpressJS,前端为 ReactJS。我正在尝试使用来自大学 SAML 身份提供商的 SAML 身份验证。我有一个快速 API

回答 0 投票 0

验证 SAML 响应“封装签名”的问题

任何人都可以建议以下是否是将 SignedInfo 元素传递给某些代码以对 xml 消息进行数字签名的正确格式? 任何人都可以建议以下是否是将 SignedInfo 元素传递给某些代码以对 xml 消息进行数字签名的正确格式? <ds:SignedInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"></ds:CanonicalizationMethod> <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"></ds:SignatureMethod> <ds:Reference URI="#pfxffef2099-cc79-fd84-e7e8-5bdced364715"> <ds:Transforms> <ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"></ds:Transform> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"></ds:Transform> </ds:Transforms> <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"></ds:DigestMethod> <ds:DigestValue>LC/2Thrnfl3SUqWp8LXfZFyXoZA=</ds:DigestValue> </ds:Reference> </ds:SignedInfo> 下面的 python 代码应该完成这项工作吗? from cryptography.hazmat.primitives.asymmetric import utils from cryptography.hazmat.backends import default_backend from cryptography.hazmat.primitives import serialization from cryptography.hazmat.primitives.asymmetric import padding from cryptography.hazmat.primitives import hashes with open("mysaml_pr_key.pem", "rb") as key_file: private_key = serialization.load_pem_private_key( key_file.read(), password=None, backend=default_backend() ) mypadding_for_signature=padding.PSS( mgf=padding.MGF1(hashes.SHA1()), salt_length=padding.PSS.MAX_LENGTH ) hasher2 = hashes.Hash(hashes.SHA1()) hasher2.update(to_be_signed.encode()) digest_of_signed_info=hasher2.finalize() signature_before_64encode=private_key.sign(digest_of_signed_info,mypadding_for_signature,utils.prehashed(hashes.SHA1())) signature=base64.b64encode(signature_before_64encode) 响应被SP拒绝,原因是“未能验证签名”。 根据 SP 的文档,我确实上传了 IDP 证书和签署它的 CA,它们应该用于签名验证。此外,我确实尝试在第三方工具中验证签名并返回相同的响应(签名验证失败。).. 我预计是以下两个原因之一导致失败: XML 元素的语法或规范化<SignedInfo> 是错误的。根据我的理解,签名是 <SignedInfo> 元素的 SHA1 摘要签名的产生。请注意,<DigestValue> 是 XML 节点的散列,其 ID 在 <reference> 元素中给出。我确认我的哈希值与第三方工具(在线 SAML 工具)生成的哈希值相同 也许我用来对元素进行签名的python代码是错误的。我需要使用 SHA1 然后使用我的私钥签名 W3C XML签名规范中使用的RSA算法是指RFC 3447中描述的RSASSA-PKCS1-v1_5算法。使用的填充方法是 PKCS#1 v1.5。您的 python 代码使用 PSS 填充 终于成功了: 最终的 signedinfo 元素是: <ds:SignedInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></ds:CanonicalizationMethod> <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"></ds:SignatureMethod> <ds:Reference URI="#pfxffef2099-cc79-fd84-e7e8-5bdced364715"> <ds:Transforms> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"></ds:Transform> <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></ds:Transform> </ds:Transforms> <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"></ds:DigestMethod> <ds:DigestValue>YeKgITtMiXZjSnfQ1I+byM6aOoQ=</ds:DigestValue> </ds:Reference> </ds:SignedInfo> 我认为问题是提到了错误的规范化方法。 唱歌的密码是: with open("mysaml_pr_key.pem", "rb") as key_file: private_key = serialization.load_pem_private_key( key_file.read(), password=None, backend=default_backend() ) signature_before_64encode = private_key.sign(to_be_signed,padding.PKCS1v15(),hashes.SHA1()) signature=base64.b64encode(signature_before_64encode) 其中 to_be_signed 是 singedinfo 字符串的 .encode() 结果。

回答 2 投票 0

【keycloak saml 身份验证】重定向 idp 提供商时无需输入密码

我开发了带有 keycloak saml 身份验证的示例应用程序。 在开发过程中,我了解到当我访问应用程序时,会生成 saml 请求并重定向 keycloak 控制台登录菜单。 经过...

回答 0 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.