ADFS Single signon issue with external idp - SAML 1.1 Assertion is missing ImmutableID of the user

Dinesh Loganathan 25 Reputation points
2024-01-19T21:39:26.7266667+00:00

I have office 365 + Onperm AD + ADFS for federation. I have configured Shibboleth as a second Claims provider (MFA enabled). When I tried to login to office 365, I get Windows AD and Shibboleth as options, when I click on Shibboleth, I get authenticated but finally I get the following error SAML 1.1 Assertion is missing ImmutableID of the user The IdP is providing the following IDPEmail = UPN ImmutableID =ObjectGUID adfssamaccountname = samaccountname I understand that I have to create a rule in ADFS, but not sure what to create Claim rule? or Claim issuance policy or both? I would appreciate your expert knowledge in this regard. Thanks in advance

Active Directory Federation Services
Active Directory Federation Services
An Active Directory technology that provides single-sign-on functionality by securely sharing digital identity and entitlement rights across security and enterprise boundaries.
1,213 questions
0 comments No comments
{count} votes

Accepted answer
  1. Sina Salam 4,991 Reputation points
    2024-01-20T21:17:02.86+00:00

    Hello @Dinesh Loganathan

    Welcome to the Microsoft Q&A and thank you for posting your questions here. To affirm your question, you encountered an error "SAML 1.1 Assertion is missing ImmutableID" and you will need guides to create a rule in ADFS, but not sure what create either to create claim rule or claim issuance policy or both.

    Most of all, in the context of Active Directory Federation Services (ADFS), you typically create a claim rule to address issues related to claims transformation and issuance. A claim rule is used to define how incoming claims from an identity provider (IdP) are processed and transformed before being sent to a relying party (RP).

    Also, for the specific issue of mapping the ImmutableID attribute when using Shibboleth as a second claims provider in your ADFS setup, you should create a claim rule.

    Therefore, I provided guides here to help you with the solution required and how to create a claim rule: To resolve the SAML 1.1 Assertion missing ImmutableID issue in your ADFS setup with Shibboleth, you need to create a claim rule to map the ImmutableID attribute correctly. The ImmutableID attribute is crucial for Office 365 to correctly identify and match the user.

    Here are the steps to create a claim rule in ADFS:

    1. Open the ADFS Management Console: Navigate to "Start" > "Administrative Tools" > "AD FS Management."
    2. Add Claim Rule: In the ADFS Management Console, select the "Trust Relationships" node in the left pane. Right-click on "Relying Party Trusts" and choose "Add Relying Party Trust" to open the wizard.
    3. Claim Rule Configuration: Follow the wizard to configure the relying party trust settings until you reach the "Issuance Authorization Rules" page.
    4. Add Claim Rule: Click on "Add Rule" to open the "Add Issuance Authorization Claim Rule" wizard.
    5. Choose Rule Type: Choose "Send Claims Using a Custom Rule" and click "Next."
    6. Configure Rule: Enter a meaningful name for the rule. Enter similar to the following as the custom rule language to map the ImmutableID attribute: c:[Type == "http://schemas.xmlsoap.org/claims/UPN", Issuer == "AD AUTHORITY"] => issue(store = "Active Directory", types = ("http://schemas.microsoft.com/LiveID/Federation/2008/05/ImmutableID"), query = ";objectGUID;{0}", param = c.Value); This rule essentially says that if the claim type is UPN and comes from the AD Authority (your Windows AD), it should issue an ImmutableID using the objectGUID.
    7. Complete Wizard: Click "Finish" to complete the claim rule creation.
    8. Apply Changes: Ensure to apply the changes to the relying party trust.
    9. Test: After configuring the claim rule, test the login process again to Office 365 using Shibboleth as the second claims provider. This claim rule should resolve the SAML 1.1 Assertion missing ImmutableID issue. Ensure that the rule is correctly configured, and the syntax is accurate. Adjustments might be necessary based on your specific configuration. NOTE: The information provided here is based on general knowledge. I hope this is helpful! Do not hesitate to let me know if you have any other questions. Please remember to "Accept Answer" if answer helped, so that others in the community facing similar issues can easily find the solution. Best Regards, Sina Salam
    1 person found this answer helpful.

1 additional answer

Sort by: Most helpful
  1. Sina Salam 4,991 Reputation points
    2024-01-23T11:44:08.89+00:00

    Hi @Dinesh Loganathan

    Your configurations seemed okay, without looking else to another trouble.

    We just need few clarifications and some additional points to consider:

    1. You need to create claims in the Claims Provider Trust (Shibboleth) based on the SAML attributes you receive from Shibboleth. These claims will map the incoming SAML attributes to ADFS claims. Ensure that the claim types, formats, and values match the SAML attributes you provided.
    2. Create Claim Issuance Policies in the Relying Party Trusts (for ClaimsXray and Office365) to specify how claims should be issued for these relying parties. In each Claim Issuance Policy, you'll define rules that determine which claims are issued and how they are mapped or transformed.
    3. For Office365, you mentioned an extra claim issuance policy for ImmutableID. Ensure that you are correctly mapping the ImmutableID claim to the corresponding attribute received from Shibboleth.

    You are doing a great job, check those three above and conduct all the necessary test. You should be fine.

    Success.

    1 person found this answer helpful.
    0 comments No comments