saml 相关问题

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

配置 SAML2:绕过“InResponseTo”验证,同时保留 OpenSaml4AuthenticationProvider 中的默认设置

我有一个在 Nginx 和 Spring Security 后面运行的 Java 后端应用程序用于 SSO。我的后端应用程序缺乏记住 cookie 会话的机制,因为 SSO 请求可能由...发起

回答 1 投票 0

SSO 中的证书问题

我使用 itfoxtec 来构建 saml 身份提供商,并复制此存储库的代码: https://github.com/ITfoxtec/ITfoxtec.Identity.Saml2/tree/master/test/TestIdPCore 当我使用考试时...

回答 1 投票 0

将 SAML 访问令牌交换为 oauth 令牌(Azure AD/Entra ID)

我需要 oauth 令牌才能代表用户向第三方 api 发出请求。目前,所有用户都必须使用 Azure AD 通过 SAML SSO 登录。我正在使用 boxyhq 的 saml-jackson 和 next-auth 来

回答 2 投票 0

如何使用 @node-saml/node-saml 制作 SAML SP?

我正在开发SAML SP。 我使用 @node-saml/node-saml 库。 虽然我制作了以下源,但 SAML 身份验证不起作用。 你能告诉我如何修复或好的参考制作来源吗

回答 1 投票 0

需要 SAML 指导

我刚刚使用 SAML 2 阐述了我的项目。我需要一些与 SAML 和 OpenSAML 库 v.2.0 相关的帮助。 有人可以告诉我有用且全面的教程吗?我只想做一个小的POC。 我...

回答 2 投票 0

SAML 响应和断言已签名/未签名?

我已成功部署并运行 spring saml 示例。从如下所示的 SAML 响应(IdP -> SP)中,可以识别是否: SAML 响应已签名还是未签名? 断言是加密的...

回答 1 投票 0

有没有办法在Flutter App中实现SAML Shibboleth认证?

我目前正在使用 Firebase 开发适用于移动设备(IOS 和 Android)的 Flutter 应用程序,我需要集成 SAML Shibboleth 身份验证。 经过多次研究,我发现 flutter 包...

回答 1 投票 0

从哪里获取 IDP 元数据 URL?

我们的客户将他们的 SSO (okta/google) 与我们的 SaaS 集成。 现在为了对它们进行身份验证,我们进行 SAML 登录。 golang 中的crewjam 库有以下片段,要求元数据U...

回答 1 投票 0

开放 id connect 对 SAML 的支持

您好,我正在使用 Open Id Connect,我只想知道如何使用 Open Id connect 实现 SAML 令牌。有什么办法 Open Id 协议也支持 SAML。

回答 1 投票 0

Node.js 加密数据大于 mod len

我正在尝试解密 SAML 响应断言。 我有以下 SAML 响应 我正在尝试解密 SAML 响应断言。 我有以下 SAML 响应 <samlp:Response ID="_c5857dc7-2109-4fd3-beb0-e07756bba622" Version="2.0" IssueInstant="2023-12-18T09:59:24.040Z" Destination="https://sp.com/api/auth/saml" Consent="urn:oasis:names:tc:SAML:2.0:consent:unspecified" InResponseTo="_1702893559452" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"> <Issuer xmlns="urn:oasis:names:tc:SAML:2.0:assertion">http://adsf.sp.io/adfs/services/trust </Issuer> <samlp:Status> <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success" /> </samlp:Status> <EncryptedAssertion xmlns="urn:oasis:names:tc:SAML:2.0:assertion"> <xenc:EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element" xmlns:xenc="http://www.w3.org/2001/04/xmlenc#"> <xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes256-cbc" /> <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"> <e:EncryptedKey xmlns:e="http://www.w3.org/2001/04/xmlenc#"> <e:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p"> <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> </e:EncryptionMethod> <KeyInfo> <ds:X509Data xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:X509IssuerSerial> <ds:X509IssuerName>CN=idp-domain.com, O=idp-o, S=idp-S, C=sa</ds:X509IssuerName> <ds:X509SerialNumber>0</ds:X509SerialNumber> </ds:X509IssuerSerial> </ds:X509Data> </KeyInfo> <e:CipherData> <e:CipherValue>*Encrypted Data*</e:CipherValue> </e:CipherData> </e:EncryptedKey> </KeyInfo> <xenc:CipherData> <xenc:CipherValue>*Large Encrypted Data*</xenc:CipherValue> </xenc:CipherData> </xenc:EncryptedData> </EncryptedAssertion> 我在CipherValue节点中获取了加密数据,并尝试使用以下代码对其进行解密。 import crypto from 'crypto' const buffer = Buffer.from( '*Large Encrypted Data*', 'base64' ) crypto.privateDecrypt( { key: privateKey, padding: crypto.constants.RSA_NO_PADDING }, buffer ) 我没有得到解密的数据,而是收到以下错误 error:0406506C:rsa routines:rsa_ossl_private_decrypt:data greater than mod len 应该分割我的加密数据吗?还是我的解密方法错误? 对于任何正在寻找答案的人。 解密是一个普通的 XML 解密,您可以使用这个库,它的工作方式就像一个魅力。 https://www.npmjs.com/package/xml-cryption

回答 1 投票 0

Rails - 将omniauth-saml 与多个IDP 一起使用

我最终想要的是能够使用 devise 正常登录或选择使用 SAML 登录。所以我读到,如果我整合omniauth和saml,然后整合omniauth和devise,我可以实现......

回答 5 投票 0

SAML 错误请求未签名。策略需要签名的身份验证请求

[https://stackoverflow.com/questions/77341286/saml-error-request-not-signed-policy-requires-signed-authentication-requests#new-answer] - 链接帖子。 (https://i.stack.imgur.com/vNfgI.png)我关注了...

回答 1 投票 0

Azure AD B2C 与 SAML 和 OIDC 集成

我们有一个 .Net 6 网站,它使用 OIDC 与 Azure AD B2C 集成。网站的登录和注册在 Azure AD B2C 租户的自定义策略中定义。 Azure AD B2C 返回索赔...

回答 2 投票 0

在 spring security saml2Login 中对多个身份提供者使用单个 loginProcessingUrl

我试图让用户使用 spring-security 5.7.x 在我们的应用程序中动态设置 SAML 身份提供商。使用 HttpSecurity 实例配置 saml2 时,可以提供

回答 1 投票 0

SAML 请求关联失败

嗨,任何人都可以帮助我,我在关联 SAML 请求和 Relaystate 值时遇到问题,您无权访问该链接,任何人都可以帮助我 需要关联 SAML REQUE...

回答 1 投票 0

AADSTS75011 用户通过服务进行身份验证的身份验证方法与请求的身份验证方法 AuthnContextClassRef

https://learn.microsoft.com/en-us/troubleshoot/azure/active-directory/error-code-aadsts75011-auth-method-mismatch#cause SSO 在 Chrome 中有效,但在 Edge 中无效。 有人可以把

回答 2 投票 0

用于 Jira Cloud SSO 集成的电子邮件域转换的自定义 AD FS 声明规则

我目前正在将 AD FS 与 Jira Cloud 集成以实现 SSO,并面临电子邮件域不匹配的挑战。 我们的用户 Active Directory 域是 company.local,但我们验证的 Jira 域...

回答 1 投票 0

如何将 SAML 应用程序发布到目录?

我是一名开发人员,我希望我的应用程序可以在 Google SAML 应用程序目录中使用。 我怎样才能做到这一点? 我没有找到任何有关如何或与谁联系来注册我的应用程序的信息。 你能帮助我吗?

回答 1 投票 0

如何在 Saml 请求中使用断言?

我已经使用 Spring Boot 实现了服务提供者 (SP),并希望生成如下 saml 请求: 我已经使用 Spring Boot 实现了服务提供者 (SP),并希望生成如下 saml 请求: <saml:Assertion Version="2.0" ID="_e2294424-9055-4b32-ac27-39c1c53f66e7" IssueInstant="2023-08-03T09:09:30.036Z" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"> <samlp:AuthnRequest Version="2.0" IssueInstant="2023-08-03T09:09:30.036Z" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" AssertionConsumerServiceURL=..... xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" /> <saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity" >..... </saml2:Issuer> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">..</ds:Signature> </saml:Assertion> 我如何配置spring security来获取这个saml请求? 我目前收到以下请求,但无法插入断言标签: <samlp:AuthnRequest Version="2.0" IssueInstant="2023-08-03T09:09:30.036Z" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" AssertionConsumerServiceURL=..... xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" /> <saml2:Issuer xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity" >...... </saml2:Issuer> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">..</ds:Signature> </samlp:AuthnRequest> 我假设您正在尝试实现 SP 发起的 SSO 流程,其中包括请求和响应。看来您理解错误,因为 Assertion 元素不能是 AuthnRequest 元素的一部分。 AuthnRequest 的最小工作示例如下所示 <samlp:AuthnRequest xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="ONELOGIN_809707f0030a5d00620c9d9df97f627afe9dcc24" Version="2.0" ProviderName="SP test" IssueInstant="2014-07-16T23:52:45Z" Destination="http://idp.example.com/SSOService.php" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" AssertionConsumerServiceURL="http://sp.example.com/demo1/index.php?acs"> <saml:Issuer>http://sp.example.com/demo1/metadata.php</saml:Issuer> <samlp:NameIDPolicy Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress" AllowCreate="true"/> <samlp:RequestedAuthnContext Comparison="exact"> <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml:AuthnContextClassRef> </samlp:RequestedAuthnContext> </samlp:AuthnRequest> Assertion 元素实际上是您将从身份提供商处收到的 Response 元素的一部分。响应示例看起来像这样 <samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="_8e8dc5f69a98cc4c1ff3427e5ce34606fd672f91e6" Version="2.0" IssueInstant="2014-07-17T01:01:48Z" Destination="http://sp.example.com/demo1/index.php?acs" InResponseTo="ONELOGIN_4fee3b046395c4e751011e97f8900b5273d56685"> <saml:Issuer>http://idp.example.com/metadata.php</saml:Issuer> <samlp:Status> <samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/> </samlp:Status> <saml:Assertion xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" ID="_d71a3a8e9fcc45c9e9d248ef7049393fc8f04e5f75" Version="2.0" IssueInstant="2014-07-17T01:01:48Z"> <saml:Issuer>http://idp.example.com/metadata.php</saml:Issuer> <saml:Subject> <saml:NameID SPNameQualifier="http://sp.example.com/demo1/metadata.php" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">_ce3d2948b4cf20146dee0a0b3dd6f69b6cf86f62d7</saml:NameID> <saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> <saml:SubjectConfirmationData NotOnOrAfter="2024-01-18T06:21:48Z" Recipient="http://sp.example.com/demo1/index.php?acs" InResponseTo="ONELOGIN_4fee3b046395c4e751011e97f8900b5273d56685"/> </saml:SubjectConfirmation> </saml:Subject> <saml:Conditions NotBefore="2014-07-17T01:01:18Z" NotOnOrAfter="2024-01-18T06:21:48Z"> <saml:AudienceRestriction> <saml:Audience>http://sp.example.com/demo1/metadata.php</saml:Audience> </saml:AudienceRestriction> </saml:Conditions> <saml:AuthnStatement AuthnInstant="2014-07-17T01:01:48Z" SessionNotOnOrAfter="2024-07-17T09:01:48Z" SessionIndex="_be9967abd904ddcae3c0eb4189adbe3f71e327cf93"> <saml:AuthnContext> <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Password</saml:AuthnContextClassRef> </saml:AuthnContext> </saml:AuthnStatement> <saml:AttributeStatement> <saml:Attribute Name="uid" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"> <saml:AttributeValue xsi:type="xs:string">test</saml:AttributeValue> </saml:Attribute> <saml:Attribute Name="mail" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"> <saml:AttributeValue xsi:type="xs:string">[email protected]</saml:AttributeValue> </saml:Attribute> <saml:Attribute Name="eduPersonAffiliation" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"> <saml:AttributeValue xsi:type="xs:string">users</saml:AttributeValue> <saml:AttributeValue xsi:type="xs:string">examplerole1</saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement> </saml:Assertion> </samlp:Response> 注意此处的Assertion元素,它包含所有重要数据。用户 NameID 取决于身份提供商配置、发出此响应的条件和 SAML 属性。 如果这对您有帮助,请告诉我。

回答 1 投票 0

IdP 与权威来源、SAML 与 IAM 中的 SSO

有人可以帮助我通过真实的例子来理解 IAM 中以下实体之间的区别吗? 国内流离失所者 权威来源 单点登录 SAML 开放认证 谢谢

回答 1 投票 0

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