Example #1
0
 public IEnumerable <Models.Client> GetAll()
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         return(entities.Clients.ToArray().Select(x => x.ToDomainModel()).ToArray());
     }
 }
 IEnumerable <Models.IdentityProvider> IIdentityProviderRepository.GetAll()
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         return(entities.IdentityProviders.ToList().ToDomainModel());
     }
 }
 private static void ValidateUniqueName(Models.IdentityProvider item, IdentityServerConfigurationContext entities)
 {
     var othersWithSameName =
         from e in entities.IdentityProviders
         where e.Name == item.Name && e.ID != item.ID
         select e;
     if (othersWithSameName.Any()) throw new ValidationException(string.Format("The Name/Identifier '{0}' is already in use.", item.Name));
 }
 public bool TryGet(string name, out Models.IdentityProvider identityProvider)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         identityProvider = entities.IdentityProviders.Where(idp => idp.Name == name).FirstOrDefault().ToDomainModel();
         return(identityProvider != null);
     }
 }
 public void Add(RelyingParty relyingParty)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         entities.RelyingParties.Add(relyingParty.ToEntity());
         entities.SaveChanges();
     }
 }
 private static void ValidateUniqueName(Models.IdentityProvider item, IdentityServerConfigurationContext entities)
 {
     var othersWithSameName =
         from e in entities.IdentityProviders
         where e.Name == item.Name && e.ID != item.ID
         select e;
     if (othersWithSameName.Any()) throw new ValidationException(string.Format(Core.Repositories.Resources.IdentityProviderRepository.NameAlreadyInUseError, item.Name));
 }
Example #7
0
        public void Add(Models.StoredGrant grant)
        {
            var entity = grant.ToEntityModel();

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                entities.StoredGrants.Add(entity);
                entities.SaveChanges();
            }
        }
 public void Add(Models.IdentityProvider item)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         ValidateUniqueName(item, entities);
         var entity = item.ToEntity();
         entities.IdentityProviders.Add(entity);
         entities.SaveChanges();
         item.ID = entity.ID;
     }
 }
        public void Update(RelyingParty relyingParty)
        {
            var rpEntity = relyingParty.ToEntity();

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                entities.RelyingParties.Attach(rpEntity);
                entities.Entry(rpEntity).State = EntityState.Modified;
                entities.SaveChanges();
            }
        }
Example #10
0
 public void Delete(int id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.Clients.Where(x => x.Id == id).SingleOrDefault();
         if (item != null)
         {
             entities.Clients.Remove(item);
             entities.SaveChanges();
         }
     }
 }
 public Models.IdentityProvider Get(int id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.IdentityProviders.SingleOrDefault(x => x.ID == id);
         if (item != null)
         {
             return(item.ToDomainModel());
         }
         return(null);
     }
 }
Example #12
0
        public IEnumerable <ClientCertificate> GetClientCertificatesForUser(string userName)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var certs =
                    from record in entities.ClientCertificates
                    where record.UserName.Equals(userName, StringComparison.OrdinalIgnoreCase)
                    select record;

                return(certs.ToList().ToDomainModel());
            }
        }
 public void Delete(string id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var rpEntity = new RelyingParties {
             Id = int.Parse(id)
         };
         entities.RelyingParties.Attach(rpEntity);
         entities.Entry(rpEntity).State = EntityState.Deleted;
         entities.SaveChanges();
     }
 }
 public void Delete(string clientId)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.OpenIdConnectClients.Find(clientId);
         if (item != null)
         {
             entities.OpenIdConnectClients.Remove(item);
             entities.SaveChanges();
         }
     }
 }
Example #15
0
        public IEnumerable <DelegationSetting> GetDelegationSettingsForUser(string userName)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var settings =
                    from record in entities.Delegation
                    where record.UserName.Equals(userName, StringComparison.OrdinalIgnoreCase)
                    select record;

                return(settings.ToList().ToDomainModel());
            }
        }
 public void DeleteCode(string code)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.CodeTokens.Where(x => x.Code.Equals(code, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
         if (item != null)
         {
             entities.CodeTokens.Remove(item);
             entities.SaveChanges();
         }
     }
 }
        private static void ValidateUniqueName(Models.IdentityProvider item, IdentityServerConfigurationContext entities)
        {
            var othersWithSameName =
                from e in entities.IdentityProviders
                where e.Name == item.Name && e.ID != item.ID
                select e;

            if (othersWithSameName.Any())
            {
                throw new ValidationException(string.Format("The Name/Identifier '{0}' is already in use.", item.Name));
            }
        }
        private static void ValidateUniqueName(Models.IdentityProvider item, IdentityServerConfigurationContext entities)
        {
            var othersWithSameName =
                from e in entities.IdentityProviders
                where e.Name == item.Name && e.ID != item.ID
                select e;

            if (othersWithSameName.Any())
            {
                throw new ValidationException(string.Format(Core.Repositories.Resources.IdentityProviderRepository.NameAlreadyInUseError, item.Name));
            }
        }
Example #19
0
 public Models.Client Get(int id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.Clients.Where(x => x.Id == id).SingleOrDefault();
         if (item != null)
         {
             return(item.ToDomainModel());
         }
         return(null);
     }
 }
 public void Delete(int id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.IdentityProviders.Where(idp => idp.ID == id).FirstOrDefault();
         if (item != null)
         {
             entities.IdentityProviders.Remove(item);
             entities.SaveChanges();
         }
     }
 }
Example #21
0
 public void Delete(string id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.StoredGrants.Where(x => x.GrantId.Equals(id, StringComparison.OrdinalIgnoreCase)).FirstOrDefault();
         if (item != null)
         {
             entities.StoredGrants.Remove(item);
             entities.SaveChanges();
         }
     }
 }
        public bool ValidateClient(string clientId, string clientSecret)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var client = (from c in entities.Clients
                              where c.ClientId.Equals(clientId, StringComparison.Ordinal) &&
                              c.ClientSecret.Equals(clientSecret, StringComparison.Ordinal)
                              select c).SingleOrDefault();

                return(client != null);
            }
        }
Example #23
0
        public bool IsDelegationAllowed(string userName, string realm)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var record = (from entry in entities.Delegation
                              where entry.UserName.Equals(userName, StringComparison.OrdinalIgnoreCase) &&
                              entry.Realm.Equals(realm, StringComparison.OrdinalIgnoreCase)
                              select entry).FirstOrDefault();

                return(record != null);
            }
        }
Example #24
0
        public bool TryGetUserNameFromThumbprint(X509Certificate2 certificate, out string userName)
        {
            userName = null;

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                userName = (from mapping in entities.ClientCertificates
                            where mapping.Thumbprint.Equals(certificate.Thumbprint, StringComparison.OrdinalIgnoreCase)
                            select mapping.UserName).FirstOrDefault();

                return(userName != null);
            }
        }
        public Models.OpenIdConnectClient Get(string clientId)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var item = entities.OpenIdConnectClients.Include("RedirectUris").Where(x => x.ClientId == clientId).SingleOrDefault();
                if (item != null)
                {
                    return(item.ToDomainModel());
                }
            }

            return(null);
        }
Example #26
0
 public bool ValidateClient(string clientId, string clientSecret)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var record = (from c in entities.Clients
                       where c.ClientId.Equals(clientId, StringComparison.Ordinal)
                       select c).SingleOrDefault();
         if (record != null)
         {
             return(Thinktecture.IdentityServer.Helper.CryptoHelper.VerifyHashedPassword(record.ClientSecret, clientSecret));
         }
         return(false);
     }
 }
        public void Update(Models.IdentityProvider item)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                ValidateUniqueName(item, entities);

                var dbitem = entities.IdentityProviders.Where(idp => idp.ID == item.ID).FirstOrDefault();
                if (dbitem != null)
                {
                    item.UpdateEntity(dbitem);
                    entities.SaveChanges();
                }
            }
        }
        public RelyingParty Get(string id)
        {
            var uniqueId = int.Parse(id);

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                return
                    ((from rp in entities.RelyingParties
                      where rp.Id == uniqueId
                      select rp)
                     .First()
                     .ToDomainModel());
            }
        }
Example #29
0
        public void Update(Models.Client model)
        {
            if (model == null)
            {
                throw new ArgumentException("model");
            }

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var item = entities.Clients.Where(x => x.Id == model.ID).Single();
                model.UpdateEntity(item);
                entities.SaveChanges();
            }
        }
Example #30
0
        public void Add(DelegationSetting setting)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var entity = new Delegation
                {
                    UserName    = setting.UserName,
                    Realm       = setting.Realm.AbsoluteUri,
                    Description = setting.Description
                };

                entities.Delegation.Add(entity);
                entities.SaveChanges();
            }
        }
Example #31
0
        public void UpdateEndpoints(EndpointConfiguration endpoints)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var entity = Mapper.Map <EndpointConfiguration, Endpoints>(endpoints);
                entity.Name = StandardConfigurationName;

                entities.Endpoints.Attach(entity);
                entities.Entry(entity).State = System.Data.EntityState.Modified;

                entities.SaveChanges();
                CacheRepository.Invalidate(EndpointConfigurationCacheKey);
                CacheRepository.Invalidate(Constants.CacheKeys.WSFedMetadata);
            }
        }
Example #32
0
        public void Delete(DelegationSetting setting)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var record =
                    (from entry in entities.Delegation
                     where entry.UserName.Equals(setting.UserName, StringComparison.OrdinalIgnoreCase) &&
                     entry.Realm.Equals(setting.Realm.AbsoluteUri, StringComparison.OrdinalIgnoreCase)
                     select entry)
                    .Single();

                entities.Delegation.Remove(record);
                entities.SaveChanges();
            }
        }