コード例 #1
0
        public async Task <String> GetOpenstackToken(IConfiguration configuration)
        {
            var clientToken = _httpClientFactory.CreateClient("IdentityAPI");
            var payload     = new TokenAuthDTO
            {
                Auth = new AuthDTO
                {
                    PasswordCredentials = new PasswordCredentialsDTO
                    {
                        Username = "******",
                        Password = "******"
                    },
                    TenantName = "admin"
                }
            };
            var stringPayload = await Task.Run(() => JsonConvert.SerializeObject(payload));

            var httpContent = new StringContent(stringPayload, Encoding.UTF8, "application/json");

            httpContent.Headers.ContentLength = stringPayload.Length;

            var responseToken = await clientToken.PostAsync(clientToken.BaseAddress + "tokens", httpContent);

            responseToken.EnsureSuccessStatusCode();
            string conteudoToken = JObject.Parse(responseToken.Content.ReadAsStringAsync().Result)["access"].ToString();

            var jsonSerializerSettings = new JsonSerializerSettings();

            jsonSerializerSettings.MissingMemberHandling = MissingMemberHandling.Ignore;
            AccessDTO access = JsonConvert.DeserializeObject <AccessDTO>(conteudoToken, jsonSerializerSettings);

            return(access.Token.Id);
        }
コード例 #2
0
ファイル: AccessService.cs プロジェクト: alexeylipaev/ACS
        public void MakeAccess(AccessDTO AccessDto, string authorEmail)
        {
            var Author = Database.Employees.Find(u => u.Email == authorEmail).FirstOrDefault();

            if (Author == null)
            {
                throw new ValidationException("Не возможно идентифицировать текущего пользователя по почте", authorEmail);
            }

            //Access access = Database.Accesses.Get(AccessDto.Id);

            //// валидация
            //if (access != null)
            //    throw new ValidationException("Доступ с таким Id уже создан", "");

            try
            {
                var    mapper = new MapperConfiguration(cfg => cfg.CreateMap <AccessDTO, Access>()).CreateMapper();
                Access Access = mapper.Map <AccessDTO, Access>(AccessDto);

                //Employee Employee = new Employee
                //{
                //    LName = UserDTO.LName,
                //    FName = UserDTO.FName,
                //    MName = UserDTO.MName,

                //    SID = UserDTO.SID,
                //    Guid1C = UserDTO.Guid1C,

                //    Birthday = UserDTO.Birthday,

                //    PersonnelNumber = UserDTO.PersonnelNumber,

                //};
                Database.Accesses.Create(Access);
                Database.Save();
            }
            catch (Exception e)
            {
                Debug.WriteLine("Имя члена:               {0}", e.TargetSite);
                Debug.WriteLine("Класс определяющий член: {0}", e.TargetSite.DeclaringType);
                Debug.WriteLine("Тип члена:               {0}", e.TargetSite.MemberType);
                Debug.WriteLine("Message:                 {0}", e.Message);
                Debug.WriteLine("Source:                  {0}", e.Source);
                Debug.WriteLine("Help Link:               {0}", e.HelpLink);
                Debug.WriteLine("Stack:                   {0}", e.StackTrace);

                foreach (DictionaryEntry de in e.Data)
                {
                    Console.WriteLine("{0} : {1}", de.Key, de.Value);
                }
            }
        }
コード例 #3
0
ファイル: SecurityData.cs プロジェクト: cacaxiq/src
 public static Task SaveUser(AccessDTO user)
 {
     SaveToken(user.AccessToken).ConfigureAwait(false);
     SecureStorage.SetAsync("user", JsonConvert.SerializeObject(user));
     return(Task.CompletedTask);
 }
コード例 #4
0
ファイル: AccessService.cs プロジェクト: alexeylipaev/ACS
 public void UpdateAccess(AccessDTO accessDTO, string authorEmail)
 {
     throw new NotImplementedException();
 }