Skip to content

Conversation

spetrescu84
Copy link
Contributor

Proposed changes

This PR updates the SDK to match the latest flow from EC.

In this new flow, the developer must always supply an existing Method Id to the /oauth2/v2.0/challenge endpoint which means once the .strongAuthRequired error is received from any endpoint, the /oauth2/v2.0/introspect endpoint needs to be called to retrieve the methods which are automatically returned to be used by the developer.

Furthermore whenever calling the /token endpoint is called with an MFA Email OTP code, the grant type should be mfa_oob

Type of change

  • Feature work
  • Bug fix
  • Documentation
  • Engineering change
  • Test
  • Logging/Telemetry

Risk

  • High – Errors could cause MAJOR regression of many scenarios. (Example: new large features or high level infrastructure changes)
  • Medium – Errors could cause regression of 1 or more scenarios. (Example: somewhat complex bug fixes, small new features)
  • Small – No issues are expected. (Example: Very small bug fixes, string changes, or configuration settings changes)

Additional information

@spetrescu84 spetrescu84 self-assigned this Aug 22, 2025
@spetrescu84 spetrescu84 requested review from a team as code owners August 22, 2025 14:40
@spetrescu84 spetrescu84 requested review from fidelianawar and nazang and removed request for a team August 22, 2025 14:40
289D138D2DF336390008CB1A /* MSALNativeAuthGenericError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 289D13852DF336330008CB1A /* MSALNativeAuthGenericError.swift */; };
289D138E2DF336390008CB1A /* MSALNativeAuthGenericError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 289D13852DF336330008CB1A /* MSALNativeAuthGenericError.swift */; };
289E15592948E601006104D9 /* MSALNativeAuthCacheInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 289E15582948E601006104D9 /* MSALNativeAuthCacheInterface.swift */; };
289E156D2948EB8A006104D9 /* MSALNativeAuthCacheAccessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 289E156C2948EB8A006104D9 /* MSALNativeAuthCacheAccessor.swift */; };
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@spetrescu84 can you please update the changelog file too?

telemetryUpdate: { [weak self] result in
self?.stopTelemetryEvent(event, context: context, delegateDispatcherResult: result)
})
case .introspectRequired:
Copy link
Contributor

@nilo-ms nilo-ms Aug 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this type of result can't be returned by the API, so we can get rid of it

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wasn't sure on this one, removed

@nilo-ms nilo-ms removed the request for review from nazang August 26, 2025 13:23
@nilo-ms nilo-ms added the native-auth Code related to native authentication label Aug 26, 2025
@spetrescu84 spetrescu84 merged commit be64b53 into feature/email-otp-mfa Aug 29, 2025
9 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

native-auth Code related to native authentication

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants