public void AcquireTokenWithFederatedUsernameIncorrectPassword() { UserQuery query = new UserQuery { FederationProvider = FederationProvider.AdfsV4, IsMamUser = false, IsMfaUser = false, IsFederatedUser = false }; var labResponse = LabUserHelper.GetLabUserData(query); var user = labResponse.User; SecureString incorrectSecurePassword = new SecureString(); incorrectSecurePassword.AppendChar('x'); incorrectSecurePassword.MakeReadOnly(); var msalPublicClient = PublicClientApplicationBuilder.Create(labResponse.AppId).WithAuthority(_authority).Build(); var result = Assert.ThrowsExceptionAsync <MsalException>(async() => await msalPublicClient .AcquireTokenByUsernamePassword(s_scopes, user.Upn, incorrectSecurePassword) .ExecuteAsync(CancellationToken.None) .ConfigureAwait(false)); }
[Timeout(1 * 60 * 1000)] // 1 min timeout public async Task DeviceCodeFlowAdfsTestAsync() { UserQuery query = new UserQuery { FederationProvider = FederationProvider.ADFSv2019, IsMamUser = false, IsMfaUser = false, IsFederatedUser = true }; LabResponse labResponse = LabUserHelper.GetLabUserData(query); Trace.WriteLine("Calling AcquireTokenWithDeviceCodeAsync"); PublicClientApplication pca = PublicClientApplicationBuilder.Create(Adfs2019LabConstants.PublicClientId) .WithRedirectUri(Adfs2019LabConstants.ClientRedirectUri) .WithAdfsAuthority(Adfs2019LabConstants.Authority) .BuildConcrete(); var result = await pca.AcquireTokenWithDeviceCode(s_scopes, deviceCodeResult => { RunAutomatedDeviceCodeFlow(deviceCodeResult, labResponse.User, true); return(Task.FromResult(0)); }).ExecuteAsync().ConfigureAwait(false); Trace.WriteLine("Running asserts"); Assert.IsNotNull(result); Assert.IsTrue(!string.IsNullOrEmpty(result.AccessToken)); }
public async Task MultiUserCacheCompatabilityTestAsync() { // Arrange //cache = new TokenCache(); //Acquire AT for default lab account LabResponse labResponseDefault = LabUserHelper.GetDefaultUser(); AuthenticationResult defaultAccountResult = await RunTestForUserAsync(labResponseDefault).ConfigureAwait(false); //Acquire AT for ADFS 2019 account UserQuery federatedUserquery = new UserQuery { FederationProvider = FederationProvider.ADFSv2019, IsMamUser = false, IsMfaUser = false, IsFederatedUser = true }; LabResponse labResponseFederated = LabUserHelper.GetLabUserData(federatedUserquery); var federatedAccountResult = await RunTestForUserAsync(labResponseFederated, false).ConfigureAwait(false); //Acquire AT for MSA account LabResponse labResponseMsa = LabUserHelper.GetB2CMSAAccount(); labResponseMsa.AppId = LabApiConstants.MSAOutlookAccountClientID; var msaAccountResult = await RunTestForUserAsync(labResponseMsa).ConfigureAwait(false); PublicClientApplication pca = PublicClientApplicationBuilder.Create(labResponseDefault.AppId).BuildConcrete(); AuthenticationResult authResult = await pca.AcquireTokenSilent(new[] { CoreUiTestConstants.DefaultScope }, defaultAccountResult.Account) .ExecuteAsync() .ConfigureAwait(false); Assert.IsNotNull(authResult); Assert.IsNotNull(authResult.AccessToken); Assert.IsNotNull(authResult.IdToken); pca = PublicClientApplicationBuilder.Create(labResponseFederated.AppId).BuildConcrete(); authResult = await pca.AcquireTokenSilent(new[] { CoreUiTestConstants.DefaultScope }, federatedAccountResult.Account) .ExecuteAsync() .ConfigureAwait(false); Assert.IsNotNull(authResult); Assert.IsNotNull(authResult.AccessToken); Assert.IsNull(authResult.IdToken); pca = PublicClientApplicationBuilder.Create(LabApiConstants.MSAOutlookAccountClientID).BuildConcrete(); authResult = await pca.AcquireTokenSilent(new[] { CoreUiTestConstants.DefaultScope }, msaAccountResult.Account) .ExecuteAsync() .ConfigureAwait(false); Assert.IsNotNull(authResult); Assert.IsNotNull(authResult.AccessToken); Assert.IsNull(authResult.IdToken); }
public async Task Interactive_AdfsV3_FederatedAsync() { // Arrange UserQuery query = new UserQuery { FederationProvider = FederationProvider.AdfsV4, IsMamUser = false, IsMfaUser = false, IsFederatedUser = true }; LabResponse labResponse = LabUserHelper.GetLabUserData(query); await RunTestForUserAsync(labResponse).ConfigureAwait(false); }
public async Task AcquireTokenFromAdfsUsernamePasswordAsync() { UserQuery query = new UserQuery { FederationProvider = FederationProvider.ADFSv2019, IsMamUser = false, IsMfaUser = false, IsFederatedUser = true }; LabResponse labResponse = LabUserHelper.GetLabUserData(query); var user = labResponse.User; SecureString securePassword = new NetworkCredential("", user.GetOrFetchPassword()).SecurePassword; var msalPublicClient = PublicClientApplicationBuilder.Create(Adfs2019LabConstants.PublicClientId).WithAdfsAuthority(Adfs2019LabConstants.Authority).Build(); AuthenticationResult authResult = await msalPublicClient.AcquireTokenByUsernamePassword(s_scopes, user.Upn, securePassword).ExecuteAsync().ConfigureAwait(false); Assert.IsNotNull(authResult); Assert.IsNotNull(authResult.AccessToken); Assert.IsNotNull(authResult.IdToken); }