void ITokenCacheInternal.ClearAdalCache() { IDictionary <AdalTokenCacheKey, AdalResultWrapper> dictionary = AdalCacheOperations.Deserialize(Logger, LegacyCachePersistence.LoadCache()); dictionary.Clear(); LegacyCachePersistence.WriteCache(AdalCacheOperations.Serialize(Logger, dictionary)); }
private void CreateAdalCache(ICoreLogger logger, ILegacyCachePersistence legacyCachePersistence, string scopes) { var key = new AdalTokenCacheKey( MsalTestConstants.AuthorityHomeTenant, scopes, MsalTestConstants.ClientId, MsalTestConstants.TokenSubjectTypeUser, MsalTestConstants.UniqueId, MsalTestConstants.User.Username); var wrapper = new AdalResultWrapper() { Result = new AdalResult(null, null, DateTimeOffset.MinValue) { UserInfo = new AdalUserInfo() { UniqueId = MsalTestConstants.UniqueId, DisplayableId = MsalTestConstants.User.Username } }, RefreshToken = MsalTestConstants.ClientSecret, RawClientInfo = MsalTestConstants.RawClientId, ResourceInResponse = scopes }; IDictionary <AdalTokenCacheKey, AdalResultWrapper> dictionary = AdalCacheOperations.Deserialize(logger, legacyCachePersistence.LoadCache()); dictionary[key] = wrapper; legacyCachePersistence.WriteCache(AdalCacheOperations.Serialize(logger, dictionary)); }
public async Task DoNotSaveRefreshTokenInAdalCacheForMsalB2CAuthorityTestAsync() { var appConfig = new ApplicationConfiguration() { ClientId = TestConstants.ClientId, RedirectUri = TestConstants.RedirectUri, AuthorityInfo = AuthorityInfo.FromAuthorityUri(TestConstants.B2CAuthority, false) }; var serviceBundle = ServiceBundle.Create(appConfig); ITokenCacheInternal cache = new TokenCache(serviceBundle); MsalTokenResponse response = TestConstants.CreateMsalTokenResponse(); var requestParams = CreateAuthenticationRequestParameters(serviceBundle, authority: Authority.CreateAuthority(serviceBundle, TestConstants.B2CAuthority)); requestParams.TenantUpdatedCanonicalAuthority = TestConstants.AuthorityTestTenant; AddHostToInstanceCache(serviceBundle, TestConstants.ProductionPrefNetworkEnvironment); await cache.SaveTokenResponseAsync(requestParams, response).ConfigureAwait(false); Assert.AreEqual(1, cache.Accessor.GetAllRefreshTokens().Count()); Assert.AreEqual(1, cache.Accessor.GetAllAccessTokens().Count()); IDictionary <AdalTokenCacheKey, AdalResultWrapper> dictionary = AdalCacheOperations.Deserialize(serviceBundle.DefaultLogger, cache.LegacyPersistence.LoadCache()); cache.LegacyPersistence.WriteCache(AdalCacheOperations.Serialize(serviceBundle.DefaultLogger, dictionary)); // ADAL cache is empty because B2C scenario is only for MSAL Assert.AreEqual(0, dictionary.Count); }