Exemple #1
0
 private void ValidateForEnterprise(IRMConfiguration config)
 {
     if (config.ExternalLicensingEnabled && !ExternalAuthentication.GetCurrent().Enabled)
     {
         base.WriteError(new OrganizationNotFederatedException(), ErrorCategory.InvalidOperation, base.Identity);
     }
     if (config.InternalLicensingEnabled)
     {
         Uri rmsserviceLocation = RmsClientManager.GetRMSServiceLocation(OrganizationId.ForestWideOrgId, ServiceType.Certification);
         if (rmsserviceLocation == null)
         {
             base.WriteError(new NoRMSServersFoundException(), ErrorCategory.InvalidOperation, base.Identity);
         }
         this.ValidateRmsVersion(rmsserviceLocation, ServiceType.CertificationService);
         this.ValidateRmsVersion(rmsserviceLocation, ServiceType.LicensingService);
     }
     if (!MultiValuedPropertyBase.IsNullOrEmpty(config.LicensingLocation))
     {
         foreach (Uri uri in config.LicensingLocation)
         {
             if (string.IsNullOrEmpty(RMUtil.ConvertUriToLicenseUrl(uri)))
             {
                 base.WriteError(new RmsUrlIsInvalidException(uri), ErrorCategory.InvalidOperation, base.Identity);
             }
             this.ValidateRmsVersion(uri, ServiceType.LicensingService);
         }
     }
 }
 private bool TryGetRacAndClc()
 {
     this.result.SetTask(Strings.InfoGetCertificationUri);
     try
     {
         this.certificationUri = RmsClientManager.GetRMSServiceLocation(this.organizationId, ServiceType.Certification);
         this.certificationUri = RmsoProxyUtil.GetCertificationServerRedirectUrl(this.certificationUri);
     }
     catch (RightsManagementException ex)
     {
         this.result.SetFailureResult(Strings.ErrorFailedToGetCertificationUri, ex, this.encryptionEnabled);
         return(false);
     }
     catch (ExchangeConfigurationException ex2)
     {
         this.result.SetFailureResult(Strings.ErrorFailedToGetCertificationUri, ex2, this.encryptionEnabled);
         return(false);
     }
     if (this.certificationUri == null)
     {
         this.result.SetFailureResult(Strings.ErrorFailedToGetCertificationUri, null, this.encryptionEnabled);
         return(false);
     }
     this.result.SetSuccessResult(Strings.InfoCertificationUri(this.certificationUri));
     this.result.SetTask(Strings.InfoCheckRmsVersion(this.certificationUri));
     try
     {
         if (this.ValidateRmsVersion(this.certificationUri, ServiceType.CertificationService))
         {
             this.result.SetSuccessResult(Strings.InfoRmsVersionChecked);
         }
         else
         {
             this.result.SetFailureResult(Strings.ErrorFailedRmsVersionCheck, null, this.encryptionEnabled);
         }
     }
     catch (RightsManagementException ex3)
     {
         this.result.SetFailureResult(Strings.ErrorFailedRmsVersionCheck, ex3, this.encryptionEnabled);
         return(false);
     }
     catch (ExchangeConfigurationException ex4)
     {
         this.result.SetFailureResult(Strings.ErrorFailedRmsVersionCheckInitialization, ex4, this.encryptionEnabled);
         return(false);
     }
     this.result.SetTask(Strings.InfoGetPublishingUri);
     try
     {
         this.publishingUri = RmsClientManager.GetRMSServiceLocation(this.organizationId, ServiceType.Publishing);
         this.publishingUri = RmsoProxyUtil.GetLicenseServerRedirectUrl(this.publishingUri);
     }
     catch (RightsManagementException ex5)
     {
         this.result.SetFailureResult(Strings.ErrorFailedToGetPublishingUri, ex5, this.encryptionEnabled);
         return(false);
     }
     catch (ExchangeConfigurationException ex6)
     {
         this.result.SetFailureResult(Strings.ErrorFailedToGetPublishingUri, ex6, this.encryptionEnabled);
         return(false);
     }
     if (this.publishingUri == null)
     {
         this.result.SetFailureResult(Strings.ErrorFailedToGetPublishingUri, null, this.encryptionEnabled);
         return(false);
     }
     this.result.SetSuccessResult(Strings.InfoPublishingUri(this.publishingUri));
     this.result.SetTask(Strings.InfoGetRacAndClc);
     try
     {
         this.tenantLicenses = RmsClientManager.AcquireTenantLicenses(this.context, this.publishingUri);
         this.result.SetSuccessResult(Strings.InfoRacAndClc);
     }
     catch (ExchangeConfigurationException ex7)
     {
         this.result.SetFailureResult(this.datacenter ? Strings.ErrorFailedToGetRacAndClcTenant : Strings.ErrorFailedToGetRacAndClcEnterprise, ex7, this.encryptionEnabled);
         return(false);
     }
     catch (RightsManagementException ex8)
     {
         this.result.SetFailureResult(this.datacenter ? Strings.ErrorFailedToGetRacAndClcTenant : Strings.ErrorFailedToGetRacAndClcEnterprise, ex8, this.encryptionEnabled);
         return(false);
     }
     return(true);
 }