【问题标题】:How can I remove an ADFS Relying Party Trust Encryption Certificate via PowerShell?如何通过 PowerShell 删除 ADFS 依赖方信任加密证书?
【发布时间】:2013-03-16 14:57:30
【问题描述】:

我可以使用以下 PowerShell 命令将加密证书添加到 ADFS 依赖方信任:

Set-ADFSRelyingPartyTrust -TargetName "My RP" -EncryptionCertificate $myCert

我可以使用相同的命令更改证书,并为EncryptionCertificate 参数使用不同的变量,但是如何删除证书?不传递变量,传递null或空字符串''会导致异常:

Missing an argument for parameter 'EncryptionCertificate'. 
Specify a parameter of type 'System.Security.Cryptography.X509Certificates.X509Certificate2' 
and try again.

如何“清除”现有的证书?

【问题讨论】:

  • @AnsgarWiechers 谢谢,但我想要的也不是。 Remove-ADFSCertificate 用于从 ADFS 中完全删除证书,如果我没看错,它仅对令牌签名、令牌解密和服务通信证书有效。 (但我将使用 -WhatIf 参数运行它,看看我得到了什么。)我需要将证书保存在另一个 RP 上。 Remove-ADFSRelyingPartyTrust 将删除 RP。然后我可以在没有证书的情况下重新添加它,但如果可能的话,我不希望完全删除并重新创建它。
  • @AnsgarWiechers 我确认,尽管 TechNet 文章说,Remove-ADFSCertificate 不适用于依赖方的令牌加密证书。相反,它适用于联合伙伴的令牌解密证书。

标签: powershell adfs2.0


【解决方案1】:

你几乎拥有它。为了从现有依赖方删除加密证书,您必须使用 $null 变量:

Set-ADFSRelyingPartyTrust -TargetName "My RP" -EncryptionCertificate $null

【讨论】:

  • 这是有道理的。谢谢。
【解决方案2】:

使用该 PowerShell 语句不会将其从 ADFS GUI 的“加密”选项卡中删除。因此,虽然它可能会产生预期的效果,但从 GUI 中并不清楚它是否实际被使用。

Set-ADFSRelyingPartyTrust -TargetName "My RP" -EncryptionCertificate $null

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-09
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 2013-06-04
    • 1970-01-01
    相关资源
    最近更新 更多