本文整理汇总了C#中Microsoft.IdentityModel.Clients.ActiveDirectory.TokenCache.ReadItems方法的典型用法代码示例。如果您正苦于以下问题:C# TokenCache.ReadItems方法的具体用法?C# TokenCache.ReadItems怎么用?C# TokenCache.ReadItems使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.IdentityModel.Clients.ActiveDirectory.TokenCache
的用法示例。
在下文中一共展示了TokenCache.ReadItems方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AcquireTokenSilentAsync
/// <summary>
/// Use the Active Directory Authentication Library to get and verify the token.
/// </summary>
public static async Task<AuthenticationResult> AcquireTokenSilentAsync(string clientID, string clientSecret, string objectIdentifier, string tenantID, TokenCache tokenCache)
{
var userId = new UserIdentifier(objectIdentifier, UserIdentifierType.UniqueId);
var item = tokenCache.ReadItems().First(i => i.TenantId == tenantID);
var context = new AuthenticationContext(item.Authority, tokenCache);
var credential = new ClientCredential(clientID, clientSecret);
AuthenticationResult result;
try
{
result = await context.AcquireTokenSilentAsync(Keys.Resource, credential, userId);
}
catch (AdalSilentTokenAcquisitionException)
{
throw;
}
return result;
}
示例2: VerifyCacheItems
private static void VerifyCacheItems(TokenCache cache, int expectedCount, TokenCacheKey firstKey, TokenCacheKey secondKey)
{
var items = cache.ReadItems().ToList();
Verify.AreEqual(expectedCount, items.Count);
if (firstKey != null)
{
Verify.IsTrue(AreEqual(items[0], firstKey) || AreEqual(items[0], secondKey));
}
if (secondKey != null)
{
Verify.IsTrue(AreEqual(items[1], firstKey) || AreEqual(items[1], secondKey));
}
}
开发者ID:ankurchoubeymsft,项目名称:azure-activedirectory-library-for-dotnet,代码行数:15,代码来源:TokenCacheTests.cs
示例3: TokenCacheSerializationTest
internal static void TokenCacheSerializationTest()
{
var context = new AuthenticationContext("https://login.windows.net/common", false);
var tokenCache = context.TokenCache;
const int MaxItemCount = 100;
const int MaxFieldSize = 1024;
for (int i = 0; i < 100; i++)
{
tokenCache.Clear();
for (int count = 0; count < Rand.Next(1, MaxItemCount); count++)
{
TokenCacheKey key = GenerateRandomTokenCacheKey(MaxFieldSize);
AuthenticationResultEx result = GenerateRandomCacheValue(MaxFieldSize);
AddToDictionary(tokenCache, key, result);
}
byte[] serializedCache = tokenCache.Serialize();
TokenCache tokenCache2 = new TokenCache(serializedCache);
Verify.AreEqual(tokenCache.Count, tokenCache2.Count);
foreach (TokenCacheItem item in tokenCache.ReadItems())
{
var item2 = tokenCache2.ReadItems().FirstOrDefault(it => it.AccessToken == item.AccessToken);
Verify.IsNotNull(item2);
double diff = Math.Abs((item.ExpiresOn - item2.ExpiresOn).TotalSeconds);
Verify.IsLessThanOrEqual(diff, 1.0);
}
}
}