Exemple #1
0
 public virtual string GetApplicationApiKey(string applicationClientId, int index)
 {
     CoreServices.ApplicationRegistration.Data.Application app = ApplicationRegistrationRepository.OneApplicationWhere(c => c.Cuid == applicationClientId);
     if (app != null)
     {
         return(app.ApiKeys[index]?.SharedSecret);
     }
     return(string.Empty);
 }
Exemple #2
0
        protected internal ApiKeyInfo GenerateApiKeyInfo(CoreServices.ApplicationRegistration.Data.Application app)
        {
            ApiKeyInfo info = new ApiKeyInfo
            {
                ApplicationNameProvider = new StaticApplicationNameProvider(app.Name),
                ApplicationClientId     = app.Cuid,
                ApiKey = ServiceProxySystem.GenerateId()
            };

            return(info);
        }
Exemple #3
0
 private static CoreServiceResponse GetApplicationRegistrationSuccessResult(CoreServiceResponse <CoreServices.ApplicationRegistration.Data.Application> appResponse)
 {
     CoreServices.ApplicationRegistration.Data.Application app = appResponse.TypedData();
     return(new CoreServiceResponse <ApplicationRegistrationResult>(
                new ApplicationRegistrationResult
     {
         Status = ApplicationRegistrationStatus.Success,
         ClientId = app.Cuid,
         ApiKey = app.ApiKeys.First().SharedSecret
     })
     {
         Success = true
     });
 }
Exemple #4
0
 public virtual ApiKeyInfo AddApiKey()
 {
     if (ApplicationName.Equals(ApplicationDiagnosticInfo.UnknownApplication))
     {
         throw new ApplicationNameNotSpecifiedException();
     }
     CoreServices.ApplicationRegistration.Data.Application app = CompositeRepository.Query <CoreServices.ApplicationRegistration.Data.Application>(a => a.Name.Equals(base.ApplicationName)).FirstOrDefault();
     if (app == null)
     {
         throw new InvalidOperationException("Application not registered");
     }
     AddApiKey(ApplicationRegistrationRepository, app, out CoreServices.ApplicationRegistration.Data.ApiKey key);
     return(new ApiKeyInfo {
         ApplicationClientId = key.ClientId, ApiKey = key.SharedSecret, ApplicationName = ApplicationName
     });
 }
        public void GetClientAppShouldGetTheSameCuid()
        {
            ServiceRegistry     registry = CoreServicesTestRegistry.GetServiceRegistry();
            AuthSettingsService svc      = registry.Get <AuthSettingsService>();

            svc.HttpContext = registry.Get <IHttpContext>();
            CoreServices.ApplicationRegistration.Data.Application check = svc.ApplicationRegistrationRepository.OneApplicationWhere(c => c.Name == svc.ClientApplicationName);
            if (check != null)
            {
                svc.ApplicationRegistrationRepository.Delete(check);
            }
            CoreServices.ApplicationRegistration.Data.Application toSave = new CoreServices.ApplicationRegistration.Data.Application {
                Name = svc.ClientApplicationName
            };
            svc.ApplicationRegistrationRepository.Save(toSave);

            CoreServices.ApplicationRegistration.Data.Application app  = svc.GetClientApplicationOrDie();
            CoreServices.ApplicationRegistration.Data.Application app2 = svc.GetClientApplicationOrDie();
            Expect.AreEqual(app.Name, app2.Name, "Names didn't match");
            Expect.AreEqual(app.Cuid, app2.Cuid, "Cuids didn't match");
            Expect.AreEqual(app.Uuid, app2.Uuid, "Uuids didn't match");
        }
Exemple #6
0
        protected internal CoreServices.ApplicationRegistration.Data.Application AddApiKey(ApplicationRegistrationRepository repo, CoreServices.ApplicationRegistration.Data.Application app, out CoreServices.ApplicationRegistration.Data.ApiKey key)
        {
            ApiKeyInfo keyInfo = GenerateApiKeyInfo(app);

            key           = CoreServices.ApplicationRegistration.Data.ApiKey.FromKeyInfo(keyInfo);
            key.Created   = DateTime.UtcNow;
            key.CreatedBy = CurrentUser.UserName;
            app.ApiKeys.Add(key);
            app = repo.Save(app);
            return(app);
        }
Exemple #7
0
 /// <summary>
 /// Adds an api key and saves the app to the specified repository
 /// </summary>
 /// <param name="repo"></param>
 /// <param name="app"></param>
 /// <returns></returns>
 protected internal CoreServices.ApplicationRegistration.Data.Application AddApiKey(ApplicationRegistrationRepository repo, CoreServices.ApplicationRegistration.Data.Application app)
 {
     CoreServices.ApplicationRegistration.Data.ApiKey ignore;
     return(AddApiKey(repo, app, out ignore));
 }
Exemple #8
0
 public string GetApplicationClientId(IApplicationNameProvider nameProvider)
 {
     CoreServices.ApplicationRegistration.Data.Application app = ApplicationRegistrationRepository.OneApplicationWhere(c => c.Name == nameProvider.GetApplicationName());
     return(app?.Cuid);
 }