The recurring redirect loop you are experiencing happens because the relying party application rejects an authentication token missing mandatory group claims, sending the user back to ADFS, which then silently re-issues the exact same incomplete token using the user's existing session cookie. Since your previous configuration changes resolved this for standard users but not contractors, the root cause is almost certainly an Active Directory permission inheritance issue. Contractor accounts are frequently placed in restricted Organizational Units where security permission inheritance is intentionally disabled. Consequently, the domain-level read access previously granted to your ADFS service account does not flow down to these specific user objects, preventing ADFS from reading the tokenGroupsGlobalAndUniversal attribute required to build a complete token.
To resolve this, you must correct the security descriptors on the container holding your contractor accounts. Open Active Directory Users and Computers, enable Advanced Features under the View menu, and navigate to the contractor OU. Access the Security tab in the OU properties and open the Advanced permission settings . You will need to either restore permission inheritance on this OU or manually grant your ADFS service account explicit Read access applied to Descendant User objects, specifically ensuring it has the rights to Read Logon Information and Read Group Membership. Once the ADFS service account can consistently read these attributes, it will issue valid tokens and stop the application loop.
Hope this answer brought you some useful information. Should you have any questions, feel free to leave a comment.
VP