Example #1
0
        public static async Task <Cookie> GetCookieAsync(KitosCredentials userCredentials)
        {
            if (CookiesCache.TryGetValue(userCredentials.Username, out var cachedCookie))
            {
                return(cachedCookie);
            }

            var url      = TestEnvironment.CreateUrl("api/authorize");
            var loginDto = ObjectCreateHelper.MakeSimpleLoginDto(userCredentials.Username, userCredentials.Password);

            var request = CreatePostMessage(url, loginDto);

            var cookieResponse = await SendWithCSRFToken(request);

            Assert.Equal(HttpStatusCode.Created, cookieResponse.StatusCode);
            var cookieParts = cookieResponse.Headers.First(x => x.Key == "Set-Cookie").Value.First().Split('=');
            var cookieName  = cookieParts[0];
            var cookieValue = cookieParts[1].Split(';')[0];

            var cookie = new Cookie(cookieName, cookieValue)
            {
                Domain = url.Host
            };

            CookiesCache.TryAdd(userCredentials.Username, cookie);
            return(cookie);
        }
Example #2
0
        private static async Task <GetTokenResponseDTO> GetTokenAsync(KitosCredentials userCredentials)
        {
            if (TokenCache.TryGetValue(userCredentials.Username, out var cachedToken))
            {
                return(cachedToken);
            }

            var url = TestEnvironment.CreateUrl("api/authorize/GetToken");

            var loginDto = ObjectCreateHelper.MakeSimpleLoginDto(userCredentials.Username, userCredentials.Password);

            using var httpResponseMessage = await PostForKitosToken(url, loginDto);

            var tokenResponseDtoAsync = await GetTokenResponseDtoAsync(loginDto, httpResponseMessage);

            TokenCache.TryAdd(userCredentials.Username, tokenResponseDtoAsync);
            return(tokenResponseDtoAsync);
        }
Example #3
0
 public AuthorizationTests()
 {
     _regularApiUser = TestEnvironment.GetCredentials(OrganizationRole.User, true);
     _globalAdmin    = TestEnvironment.GetCredentials(OrganizationRole.GlobalAdmin);
     _getTokenUrl    = TestEnvironment.CreateUrl("api/authorize/GetToken");
 }