AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[adfs](server)

Martin Hope
user1913559
Asked: 2022-01-08 10:03:16 +0800 CST

ADFS。第三方真实声明规则需要返回“域\用户”

  • 1

我已经在 ADFS 中配置了 Claims Provider Trust 并且我只Email进入NameID. 我无法更改第三方声明提供商信任,因此我必须WindowsAccountName使用我从第三方 IDP 以 NameID 收到的电子邮件地址,并将其转发到 Outlook Web Access(本地)。

我发现当我使用以下声明规则时,登录有效,但前提是用户的 UPN 和电子邮件地址匹配。如果它们之间存在差异(例如 sAMAccountName=jdoe;[email protected];[email protected] ),转发到 Exchange 的值会导致引发错误。

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] == "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified"]
 => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer = "AD AUTHORITY", OriginalIssuer = c.OriginalIssuer, Value = regexreplace(c.Value, "(?<user>[^\@]+)\@(.+)", "contoso\${user}"), ValueType = c.ValueType);

我如何通过他们的电子邮件地址查找用户,并返回他们WindowsAccountName的domain\username格式?

exchange adfs
  • 1 个回答
  • 162 Views
Martin Hope
daisy
Asked: 2021-10-17 19:52:10 +0800 CST

无法使用 SimpleSAMLphp 设置 AD FS,我在哪里获取元数据?

  • 0

我正在关注这篇文章以使用 PHP 设置 AD FS SSO:https ://stratbeans.medium.com/how-to-integrate-active-directory-in-php-application-for-sso-22eb62b6b866

我已经在 Ubuntu 20.04 上成功设置了 nginx + php-fpm,但我被困在这里:

在此处输入图像描述

在哪里可以找到 AD FS 上的元数据?

adfs
  • 1 个回答
  • 102 Views
Martin Hope
Jeremy
Asked: 2021-09-22 10:37:38 +0800 CST

ADFS:某些用户无法登录

  • 0

我在 Server 2019 上运行了一个新的 ADFS 实现。设置后,我使用 /adfs/ls/IdpInitiatedSignon.aspx 测试了各种用户帐户的身份验证。我测试的大多数帐户都可以正常工作,没有任何问题。但是,有一些帐户表现出以下行为:

  • 使用错误的用户名/密码登录会导致显示用户名/密码不正确的错误消息。这是预期的和可取的。
  • 使用正确的用户名/密码登录会导致页面刷新,再次显示登录表单。没有错误信息。我将此称为“刷新登录”。

在 ADFS 服务器上的安全事件日志中,我看到以下三个与“刷新登录”相关的事件:

  • 事件 4648 - 尝试使用显式凭据登录。
  • 事件 4624 - 帐户已成功登录。
  • 事件 4625 - 帐户登录失败(失败原因:未知用户名或密码错误)

几条信息:

  • ADFS 配置为使用名为 FsGmsa 的组托管服务帐户。它是 Windows 授权访问组的成员。
  • 启用“表单”和“Microsoft Passport 身份验证”作为主要身份验证方法。我最终将添加 Azure MFA。
  • 所有测试都在内网运行。
  • 所有证书均有效且未过期。
  • 无论使用什么计算机/设备,对于相同的用户,我都会得到相同的结果。
  • 我找不到有效的帐户和无效的帐户之间的任何相似之处或差异。
authentication adfs
  • 1 个回答
  • 743 Views
Martin Hope
error401
Asked: 2020-09-23 01:24:52 +0800 CST

ADFS - 如何在没有域的情况下发送 sAMAccountName

  • 1

我正在使用 ADFS,我需要发送 sAMAccountName。

当前使用“转换传入声明”规则:传入声明类型:Windows 帐户名称传出声明类型:名称 ID 传出名称 ID 格式:电子邮件(我知道格式实际上是错误的,但这是提供商想要的格式并且它有效)

不幸的是,发送的用户名包括域前缀,例如“域\用户名”。我怎样才能摆脱“域”?

我尝试通过

    c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"]
    => issue(Type = "sswindowsaccountname", Value = RegexReplace(c.Value, "^Domain\\", ""));

不幸的是,它不起作用。

有人知道我该如何解决吗?谢谢!

adfs saml
  • 1 个回答
  • 3441 Views
Martin Hope
Sid
Asked: 2020-08-10 04:55:11 +0800 CST

我们可以添加其他密码服务(例如密码哈希)作为 ADFS 的备份吗?

  • 0

我已配置 ADFS 密码身份验证。现在我有疑问,如果 ADFS 因任何原因出现故障,我该如何应对这种情况?我需要哪些步骤添加其他密码验证服务作为 ADFS 的备份?

azure adfs azure-active-directory azureadconnect
  • 1 个回答
  • 35 Views
Martin Hope
Diego Frehner
Asked: 2020-06-13 06:58:14 +0800 CST

配置 ADFS 以允许访问服务器应用程序并应用身份验证策略

  • 0

我的目标是将身份验证从我的 OIDC 身份提供者(使用身份服务器 4)委托给 ADFS。在 ADFS 中,我还想配置在该场景中必须使用 MFA。

根据文档和我的解释,我Server application在AD FS -> Application Groups. 该定义为我提供了一个客户端 ID 和客户端密码,这很好,因为我的 IDP 是一个机密客户端。委派工作正常。现在的问题是我无法配置应用于该客户端的身份验证策略,即用户在登录时必须使用 MFA。

Web Api客户端定义是唯一允许配置身份验证策略的(与Native application和相对)。(在此处Server application的示例中可见)。我不明白为什么存在可能的应用程序类型。Web api 不会从 ADFS 请求访问或 ID 令牌。它只需要验证令牌。但是和or之间似乎存在一些依赖关系(由于客户端-服务器应用程序模板)。Web APIWeb APINative applicationServer application

是否有可能以及如何使用身份验证策略配置机密客户端?

oauth adfs
  • 1 个回答
  • 516 Views
Martin Hope
SteadH
Asked: 2020-02-11 13:05:42 +0800 CST

AD FS 未对 SAML 请求进行身份验证

  • 1

今天早上,我们注意到 Active Directory 联合服务已停止对所有基于 SAML 的依赖方信任(其中大约 8 个)执行 SAML 身份验证。通过同一 ADFS 服务器(服务器 2012 R2)进行的 Office 365 登录没有遇到问题。周末没有执行更新、重新启动或配置更改,并且 SAML 很高兴在 48 小时前进行身份验证。

依赖方信任之一,一个 DokuWiki 系统,吐出以下错误:“ADFS:签名验证失败。SAML 响应被拒绝”

第 3 方系统(SAML 身份验证)给出错误:“ADFS 签名验证失败,请联系您的系统管理员。”

因为我从尝试在此 ADFS 服务器上通过 SAML 进行身份验证的两个不同系统收到相同的错误,所以我排除了这些系统并将我的视野缩小到 ADFS 服务器。

在通过事件查看器的 ADFS 管理日志中,唯一出现的新事件是:

The SAML artifact resolution endpoint is not configured or it is disabled. 

The artifact resolution service is not started. 

User Action 
If the artifact resolution service is required, use the AD FS Management snap-in to configure or enable the SAML artifact resolution endpoint.

这似乎是相关的......但我在 ADFS 控制台或通过 powershell 中没有看到任何关于工件解析的信息。此外,我在互联网上没有找到很多其他人有同样的问题,这总是让我认为我正在追踪一个红鲱鱼。

编辑以从 Get-ADFSProperties 添加证书翻转详细信息:

AutoCertificateRollover                    : True
CertificateCriticalThreshold               : 2
CertificateDuration                        : 365
CertificateGenerationThreshold             : 20
CertificatePromotionThreshold              : 5
CertificateRolloverInterval                : 720

Get-AdfsCertificate 显示:

Certificate     : [Subject]
                    CN=*.ourdomain.edu, O=Our Org, L=Eugene, S=Oregon, C=US

                  [Issuer]
                    CN=DigiCert SHA2 High Assurance Server CA, OU=www.digicert.com, O=DigiCert Inc, C=US

                  [Serial Number]
                    (SerialNumber1)

                  [Not Before]
                    6/9/2019 5:00:00 PM

                  [Not After]
                    9/8/2020 5:00:00 AM

                  [Thumbprint]
                    (Thumprint goes here)

CertificateType : Service-Communications
IsPrimary       : True
StoreLocation   : LocalMachine
StoreName       : My
Thumbprint      : (Thumprint goes here)

Certificate     : [Subject]
                    CN=ADFS Encryption - fs.our-org.edu

                  [Issuer]
                    CN=ADFS Encryption - fs.our-org.edu

                  [Serial Number]
                    (SerialNumber1)

                  [Not Before]
                    2/4/2020 2:13:25 AM

                  [Not After]
                    2/3/2021 2:13:25 AM

                  [Thumbprint]
                    (Thumprint goes here)

CertificateType : Token-Decrypting
IsPrimary       : True
StoreLocation   : CurrentUser
StoreName       : My
Thumbprint      : (Thumprint goes here)

Certificate     : [Subject]
                    CN=ADFS Signing - fs.our-org.edu

                  [Issuer]
                    CN=ADFS Signing - fs.our-org.edu

                  [Serial Number]
                    (SerialNumber1)

                  [Not Before]
                    2/4/2020 2:13:27 AM

                  [Not After]
                    2/3/2021 2:13:27 AM

                  [Thumbprint]
                    (Thumprint goes here)

CertificateType : Token-Signing
IsPrimary       : True
StoreLocation   : CurrentUser
StoreName       : My
Thumbprint      : (Thumprint goes here)

Certificate     : [Subject]
                    CN=ADFS Encryption - fs.our-org.edu

                  [Issuer]
                    CN=ADFS Encryption - fs.our-org.edu

                  [Serial Number]
                    (SerialNumber1)

                  [Not Before]
                    2/23/2019 8:52:39 PM

                  [Not After]
                    2/23/2020 8:52:39 PM

                  [Thumbprint]
                    (Thumprint goes here)

CertificateType : Token-Decrypting
IsPrimary       : False
StoreLocation   : CurrentUser
StoreName       : My
Thumbprint      : (Thumprint goes here)

Certificate     : [Subject]
                    CN=ADFS Signing - fs.our-org.edu

                  [Issuer]
                    CN=ADFS Signing - fs.our-org.edu

                  [Serial Number]
                    (SerialNumber1)

                  [Not Before]
                    2/23/2019 8:52:40 PM

                  [Not After]
                    2/23/2020 8:52:40 PM

                  [Thumbprint]
                    (Thumprint goes here)

CertificateType : Token-Signing
IsPrimary       : False
StoreLocation   : CurrentUser
StoreName       : My
Thumbprint      : (Thumprint goes here)

你会带着这个去哪里?我很乐意根据需要挖掘任何细节或发布输出/日志。

谢谢!

active-directory adfs saml
  • 1 个回答
  • 6257 Views
Martin Hope
Thomas Lazar
Asked: 2020-01-09 07:07:26 +0800 CST

ADFS 2019 OAuth 访问令牌生命周期

  • 1

是否可以更改 ADFS 中的访问令牌生命周期?

我配置了一个应用程序组,可以很好地发出令牌。我只想知道是否可以在某处更改您通过 OAuth 获得的访问和刷新令牌的生命周期。

我唯一发现的是一些关于中继方信任的设置,但我真的没有这些。

adfs
  • 1 个回答
  • 2226 Views
Martin Hope
JakeHova
Asked: 2019-11-05 07:01:47 +0800 CST

声明规则语言 RegExReplace 与多个匹配项

  • 0

背景:我正在尝试通过 ADFS 在本地 AD 和 AWS 之间设置单点登录。我无权访问我们的 ADFS 实例,而且我真的对 ADFS 知之甚少,所以我只能尝试猜测解决方案。幸运的是,在我相信一切都会正常运行之前,我认为我已经很接近了,只有一个索赔规则翻译需要解决。

问题:我遇到的问题是我需要使用声明规则语言(我也没有太多经验)将 AD 组转换为 AWS 角色,但我提出的规则无法正常工作。

我已经尝试过:我已经让 AD 组填充临时/变量类型,并传递到颁发令牌的管道中的下一步。我需要解析的 AD 组的格式是:AWS#AWS_AccountName#AWS_RoleName#AWS_AccountNumber(即 AWS#Sandbox#SecurityAuditor#1234567890)。

我需要使用此组名中的 AWS_RoleName 和 AWS_AccountNumber 来生成要传递给 AWS 的 arn。我尝试使用 RegExReplace 来执行此规则:c:[Type=="http://temp/variable", Value=~"(?i)(^AWS)#([-_a-z0-9] +)#([-_a-z0-9]+)#([-_a-z0-9]+)"] => 问题(Type="https://aws.amazon.com/SAML/Attributes/Role ", Value=RegExReplace(c.Value, "(?i)(^AWS)#([-_a-z0-9]+)#([-_a-z0-9]+)#([- a-z0 -9]+)", "arn:aws:iam:$4:saml-provider/ADFS,arn:aws:iam:$4:role/AWSReservedSSO $3))

我的想法是我将使用 $ 来填写获得访问权限所需的 AWS 角色名。但是我不认为这是有效的,因为我刚刚读到 RegExReplace 用第三个参数生成的字符串替换了源字符串中的所有 RegEx 匹配项。

任何人都可以指出此声明规则中的缺陷或编写更好的规则以获得所需的结果吗?

先感谢您

adfs
  • 1 个回答
  • 596 Views
Martin Hope
ysth
Asked: 2019-01-30 12:22:09 +0800 CST

adfs 在 authnrequest 消息上给出错误

  • 0

我有一个 SAML2 服务提供商,并且正在尝试使用 ADFS 身份提供商设置 SSO。目前我的服务提供商只使用 Okta 和 OneLogin。当他们启动身份验证(向我发送响应消息)时,它会成功,但是当从我这边启动身份验证(向他们发送 AuthnRequest 消息)时,ADFS 出错。

我无法确定原因,也不是很熟悉 ADFS。身份提供者(匿名)提供的错误日志有这个

Verbose,1/25/2019 8:37:10 AM,AD FS Tracing,70,None,"  Message after decoding: <?xml version=""1.0"" standalone=""yes""?>
<samlp:AuthnRequest xmlns:samlp=""urn:oasis:names:tc:SAML:2.0:protocol""
                    xmlns:saml=""urn:oasis:names:tc:SAML:2.0:assertion""
                    Destination=""https://exmaple.com/adfs/ls/""
                    ProviderName=""My SP's human readable name.""
                    AssertionConsumerServiceURL=""https://www.example.com/login/saml2/1234567/authenticate""
                    Version=""2.0""
                    IssueInstant=""2019-01-25T16:37:08Z""
                    ID=""IDcbe874446fa31fcb9c3f5868beab546b"">
  <saml:Issuer>https://www.example.com</saml:Issuer>
  <samlp:NameIDPolicy Format=""transient"" AllowCreate=""1"" />
</samlp:AuthnRequest>"
Error,1/25/2019 8:37:10 AM,AD FS Tracing,153,None,"Exception: MSIS0018: The SAML protocol message cannot be read because it contains data that is not valid.
StackTrace:    at Microsoft.IdentityServer.Protocols.Saml.SamlProtocolSerializer.ReadNameIDPolicy(XmlReader reader)
   at Microsoft.IdentityServer.Protocols.Saml.SamlProtocolSerializer.ReadAuthnRequest(XmlReader reader)
   at Microsoft.IdentityServer.Protocols.Saml.HttpSamlBindingSerializer.ReadProtocolMessage(String encodedSamlMessage)
   at Microsoft.IdentityServer.Protocols.Saml.HttpSamlBindingSerializer.CreateFromNameValueCollection(Uri baseUrl, NameValueCollection collection)
   at Microsoft.IdentityServer.Protocols.Saml.HttpRedirectSamlBindingSerializer.ReadMessage(Uri requestUrl, NameValueCollection form)
   at Microsoft.IdentityServer.Web.Protocols.Saml.HttpSamlMessageFactory.CreateMessage(WrappedHttpListenerRequest httpRequest)
   at Microsoft.IdentityServer.Web.Protocols.Saml.SamlContextFactory.CreateProtocolContextFromRequest(WrappedHttpListenerRequest request, ProtocolContext& protocolContext)
   at Microsoft.IdentityServer.Web.Protocols.Saml.SamlProtocolHandler.CreateProtocolContext(WrappedHttpListenerRequest request)
   at Microsoft.IdentityServer.Web.PassiveProtocolListener.GetProtocolHandler(WrappedHttpListenerRequest request, ProtocolContext& protocolContext, PassiveProtocolHandler& protocolHandler)
   at Microsoft.IdentityServer.Web.PassiveProtocolListener.OnGetContext(WrappedHttpListenerContext context)
Exception: Invalid URI: The format of the URI could not be determined.
StackTrace:    at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
   at Microsoft.IdentityServer.Protocols.Saml.SamlProtocolSerializer.ReadNameIDPolicy(XmlReader reader)
"
Error,1/25/2019 8:37:10 AM,AD FS Tracing,87,None,Passive pipeline error

我不确定这两个堆栈跟踪是不同的错误还是连接的。

我的服务提供商正在使用 Net::SAML2 perl 模块的略微修改版本。

我希望这只是 ADFS 所期望的一些属性或元素,但我没有提供,或者更好的是,他们这边的一些配置不正确。

什么可能导致此错误?

adfs
  • 1 个回答
  • 1047 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve