Exemple #1
0
        public bool AddTenantToken(string tenant, TenantToken token)
        {
            var tenantDetails = GetTenant(tenant);

            if (tenantDetails == null)
            {
                return(false);
            }

            tenantDetails.Settings.Tokens.Add(token);
            return(true);
        }
Exemple #2
0
        private static TenantToken GetTenantToken(string access_token)
        {
            try
            {
                IJsonSerializer   serializer = new JsonNetSerializer();
                IDateTimeProvider provider   = new UtcDateTimeProvider();
                IJwtValidator     validator  = new JwtValidator(serializer, provider);
                IBase64UrlEncoder urlEncoder = new JwtBase64UrlEncoder();
                IJwtDecoder       decoder    = new JwtDecoder(serializer, validator, urlEncoder);

                string resultContent = decoder.Decode(access_token, client_secret, verify: false);

                TenantToken tenantToken = JsonConvert.DeserializeObject <TenantToken>(resultContent);
                return(tenantToken);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemple #3
0
        public string AddToken(string tenantName, TenantToken tenantToken)
        {
            List <TenantConfiguration> tenants = TenantIOReader.ReadTenantsFromConfigFile();
            var tenant = tenants.Find(x => x.Name == tenantName);

            if (tenant == null)
            {
                return(null);
            }

            tenant.Settings.Tokens.Add(tenantToken);
            _tenantRepository.AddTenantToken(tenantName, tenantToken);

            // Write into file
            if (TenantIOWriter.WriteTenantsConfiguration(tenants) == true)
            {
                return(tenantToken.Token);
            }

            return(null);
        }
Exemple #4
0
        public string AddToken(string tenantName, DateTime expireDate)
        {
            List <TenantConfiguration> tenants = TenantIOReader.ReadTenantsFromConfigFile();
            var tenant = tenants.Find(x => x.Name == tenantName);

            if (tenant == null)
            {
                return(null);
            }

            string apiKey = KeyGenerators.GenerateApiKey();

            var tenantToken = new TenantToken()
            {
                ExpireDate = expireDate,
                Token      = apiKey,
                IsActive   = true,
                IssuedDate = DateTime.Now,
                IssuedFor  = $"Issued for tenant {tenantName}"
            };

            tenant.Settings.Tokens.Add(tenantToken);
            _tenantRepository.AddTenantToken(tenantName, tenantToken);

            // Write into file
            if (TenantIOWriter.WriteTenantsConfiguration(tenants) == true)
            {
                // Send to the Cluster
                _storageHubService.SendCreateTenantTokenStorage(new Model.Storages.Requests.Tenants.CreateTenantTokenDetails()
                {
                    Tenant = tenantName,
                    Token  = tenantToken,
                    StoragesAlreadySent = new List <string>()
                });

                return(apiKey);
            }

            return(null);
        }
 public CreateTenantTokenDetails()
 {
     StoragesAlreadySent = new List <string>();
     Token = new TenantToken();
 }
 public TenantTokenCreatedDetails()
 {
     Token = new TenantToken();
     StoragesAlreadySent = new List <string>();
 }