Beispiel #1
0
 public IEnumerable <Models.Client> GetAll()
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         return(entities.Clients.ToArray().Select(x => x.ToDomainModel()).ToArray());
     }
 }
Beispiel #2
0
 IEnumerable <Models.IdentityProvider> IIdentityProviderRepository.GetAll()
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         return(entities.IdentityProviders.ToList().ToDomainModel());
     }
 }
 public void Add(RelyingParty relyingParty)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         entities.RelyingParties.Add(relyingParty.ToEntity());
         entities.SaveChanges();
     }
 }
Beispiel #4
0
 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(Models.StoredGrant grant)
        {
            var entity = grant.ToEntityModel();

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                entities.StoredGrants.Add(entity);
                entities.SaveChanges();
            }
        }
Beispiel #6
0
 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();
            }
        }
 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();
         }
     }
 }
Beispiel #9
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);
     }
 }
Beispiel #10
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());
            }
        }
Beispiel #11
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());
            }
        }
Beispiel #12
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);
            }
        }
 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();
     }
 }
Beispiel #14
0
 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);
     }
 }
Beispiel #15
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();
         }
     }
 }
Beispiel #16
0
 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();
         }
     }
 }
 public void Delete(string id)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item =
             entities.StoredGrants.FirstOrDefault(x => x.GrantId.Equals(id, StringComparison.OrdinalIgnoreCase));
         if (item != null)
         {
             entities.StoredGrants.Remove(item);
             entities.SaveChanges();
         }
     }
 }
Beispiel #18
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);
            }
        }
Beispiel #19
0
        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();
                }
            }
        }
Beispiel #20
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();
            }
        }
Beispiel #21
0
 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();
         }
     }
 }
        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());
            }
        }
Beispiel #23
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(CryptoHelper.VerifyHashedPassword(record.ClientSecret, clientSecret));
         }
         return(false);
     }
 }
Beispiel #24
0
        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));
            }
        }
        public void Create(OpenIdConnectClient model)
        {
            if (model == null)
            {
                throw new ArgumentNullException("model");
            }
            var item = new OpenIdConnectClientEntity();

            model.UpdateEntity(item);
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                entities.OpenIdConnectClients.Add(item);
                entities.SaveChanges();
            }
        }
Beispiel #26
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();
            }
        }
Beispiel #27
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();
            }
        }
        public 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);
        }
Beispiel #29
0
        public void Create(Models.Client model)
        {
            if (model == null)
            {
                throw new ArgumentException("model");
            }

            using (var entities = IdentityServerConfigurationContext.Get())
            {
                var item = new Client();
                model.UpdateEntity(item);
                entities.Clients.Add(item);
                entities.SaveChanges();
                model.ID = item.Id;
            }
        }
 public void Update(OpenIdConnectClient model)
 {
     if (model == null)
     {
         throw new ArgumentNullException("model");
     }
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         var item = entities.OpenIdConnectClients.Find(model.ClientId);
         if (item != null)
         {
             model.UpdateEntity(item);
             entities.SaveChanges();
         }
     }
 }