我正在处理一个客户项目,我们正在验证客户的IDP解决方案是否有问题,或者这是B2C配置项。在验证中,我将Azure AD(不同的订阅)连接到另一个配置上的Azure B2C实例。处理进行得很好,除了最后我们得到的Object引用未设置为对象的实例。
Azure AD正在向B2C初始化SSO(IDP发起的会话),以模仿客户解决方案的作用。
我一直在尝试查找对象引用是什么,但没有任何运气。任何帮助表示赞赏。
37
{
"Kind": "HandlerResult",
"Content": {
"Result": true,
"RecorderRecord": {
"Values": [
{
"Key": "EnabledForUserJourneysTrue",
"Value": {
"Values": [
{
"Key": "CurrentStep",
"Value": 5
},
{
"Key": "TechnicalProfileEnabled",
"Value": {
"EnabledRule": "Always",
"EnabledResult": true,
"TechnicalProfile": "SAMLAssert"
}
}
]
}
}
]
},
"PredicateResult": "True"
}
}
38
{
"Kind": "Predicate",
"Content": "Web.TPEngine.StateMachineHandlers.IsSendClaimsProtocolAnApiHandler"
}
39
{
"Kind": "HandlerResult",
"Content": {
"Result": true,
"PredicateResult": "False"
}
}
40
{
"Kind": "Predicate",
"Content": "Web.TPEngine.StateMachineHandlers.IsPresentationTokenGeneratedHandler"
}
41
{
"Kind": "HandlerResult",
"Content": {
"Result": true,
"PredicateResult": "False"
}
}
42
{
"Kind": "Action",
"Content": "Web.TPEngine.StateMachineHandlers.PresentationTokenGenerationHandler"
}
43
{
"Kind": "FatalException",
"Content": {
"Time": "10:04 PM",
"Exception": {
"Kind": "Handled",
"HResult": "80004003",
"Message": "Object reference not set to an instance of an object.",
"Data": {}
}
}
}
答案 0 :(得分:0)
我在合作伙伴应用程序和我们的Azure B2C之间通过SP启动的自定义策略设置收到了相同的错误,并且能够解决它。对于不熟悉自定义策略故障排除的任何人,您都可以在App Insights中阅读这些跟踪日志。
服务提供商的元数据文件包含一个看起来像这样的AssertionConsumerService元素
<AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="[SP login response endpoint]"/>
通过修改此元素以包括“ index”和“ isDefault”,错误消失了:
<AssertionConsumerService index="0" isDefault="true" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="[SP login response endpoint]"/>
我从Microsoft's SAML test app metadata获得了这些属性。