Skip to content

Using MSAL.NET in Unity iOS gives PlatformNotSupportedException #5190

Open
@rafek

Description

@rafek

I'm on Unity 6 and using Microsoft.Identity.Client at 4.69.1. I'm trying to implement authentication against my already configured Azure AD B2C.

My MSAL client configuration looks like this:

_msalClient =
    PublicClientApplicationBuilder
        .Create(ClientId)
        .WithB2CAuthority(Authority)
        .WithRedirectUri(RedirectUri)
        .WithIosKeychainSecurityGroup("com.my.bundle")
        .Build();

Then I perform token acquisition:

authResult = await
    _msalClient
        .AcquireTokenInteractive(Scopes)
        .WithParentActivityOrWindow(null)
        .ExecuteAsync();

I have URLTypes configured as well. What I keep getting is:

MSAL Error True True MSAL 4.69.1.0 MSAL.CoreCLR Mono Unity IL2CPP (Jan 11 2025 12:24:23) Unix 24.3.0.0 [2025-03-15 09:53:50Z - fb26809c-3bff-4bc1-85e5-cc4af6681276] System.PlatformNotSupportedException: Unix 24.3.0.0

Apparently, Unity reports the system as Unix (24.3.0.0) and it's not supported by MSAL.NET.

Is that an expected behaviour and shall I fall back to call native MSAL for iOS?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions