我们目前正在使用基于Saml的身份提供商(Idp)生成SAML响应以允许SSO到Google应用。 我们希望使用java支持Office 365 。
我正在查看Office 365的所有文档,从我看到的,它使用SAML,但仅限于由ADFS(Active Directory联合身份验证服务)或任何其他联合身份验证服务提供。 是否可以将Office 365配置为使用我的Idp进行身份验证,而不依赖于ADFS和活动目录(AD)。 如果是,您能否详细说明如何配置相同。 我尝试使用powershell管理Office 365,但是当我尝试使用Connect-MsolService连接到Office 365后尝试执行此命令行开关转换后,它失败了。
我收到错误:
Convert-MsolDomainToFederated : Failed to connect to Active Directory Federation Services 2.0 on the local machine.Please try running Set-MsolADFSContext before running this command again.
这适用于任何人吗?请建议
由于
答案 0 :(得分:1)
您需要按照“在Office 365租户中配置域以进行联盟”下的说明进行操作{。{3}}。
因为你需要一个STS用于“活动”,而SAML就足以用于“被动”(除非你有新的符合ADAL标准的O365厚客户端 - 但这些对第三方供应商来说效果不佳)。如果您有STS for active,则需要MetadataExchangeUri。
您正在使用here进行Set-MsolDomainAuthentication:
Set-MsolDomainAuthentication -Authentication federated -DomainName <string> [-ActiveLogOnUri <string>] [-FederationBrandName <string>] [-IssuerUri <string>] [-LogOffUri <string>] [-MetadataExchangeUri <string>] [-PassiveLogOnUri <string>] [-SigningCertificate <string>]
正如我所说,如果你有可用的STS,你只需要“有效”。
他们在第一个链接上提供的示例相当不错,您最终会得到类似的结果:
$dom = "contoso.com"
$BrandName - "Sample SAML 2.0 IDP"
$LogOnUrl = "https://saml.contoso.com/samlLogonEndpoint"
$LogOffUrl = "https://saml.contoso.com/SamlLogOffEndpoint"
$stsUrl = "https://saml.contoso.com/PAOS"
$MyURI = "urn:uri:MySamlp2IDP"
$MySigningCert = @" --- YOUR CERT HERE ---" "@
$entityID = "http://saml.contoso.com"
$Protocol = "SAMLP"
Set-MsolDomainAuthentication ` -DomainName $dom -FederationBrandName $dom -Authentication Federated -PassiveLogOnUri $LogOnUrl -ActiveLogOnUri $stsUrl -SigningCertificate $MySigningCert -IssuerUri $entityID -LogOffUri $LogOffUrl -PreferredAuthenticationProtocol $Protocol