pRaNaY_.net Ответов: 0

Как отправить сертификат клиента для создания запроса документа с использованием кису binfingtype случае atompub


Привет Команда,

Я работаю с задачи: чтобы создать документ, я успешно создал документ, подключившись непосредственно к filenet использование библиотеки CMIS (Apache chemistry) Но теперь мы используем Для datapower в качестве посредника между моим заявлением и Задачи:, Так что в то время как связь через это я получаю аутентификация сертификата клиента вопрос.

Можете ли вы, пожалуйста, помочь мне?. Как отправить сертификат клиента в data power для аутентификации через BindingType= " AtomPub"

Я не знаю, куда приложить этот сертификат.

пример кода

Конфигурации фабрики = конфигурации.NewInstance (); параметры словаря = new Dictionary (); параметры[DotCMIS.SessionParameter.BindingType] = BindingType.Случае atompub; параметры[DotCMIS.SessionParameter.AtomPubUrl] = "http://host/fncmis/resources/Service?repositoryId=XXX";
параметры[DotCMIS.SessionParameter.User] = "XXXXXXX"; параметры[DotCMIS.SessionParameter.Пароль] = "ХХХХХХХ"; параметры[DotCMIS.SessionParameter.RepositoryId] = "ХХХ"; ISession сессии = фабрика.CreateSession(параметры);

Спасибо!

Что я уже пробовал:

Я попробовал следующий код для сертификата клиента,
parameters[DotCMIS.SessionParameter.AuthenticationProviderClass] = ClientCertAuthentication.GetClientCertificate();

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; };

public class ClientCertAuthentication
   {
       public static X509Certificate2 GetClientCertificate()
       {

           X509Store userCaStore = new X509Store(StoreName.My, StoreLocation.CurrentUser);
           try
           {
               string certThumbPrint = "f7r7rydf74yg47839w93j374y45yf745ty47t47t47t";
               userCaStore.Open(OpenFlags.ReadOnly);
               X509Certificate2Collection certificatesInStore = userCaStore.Certificates;
               X509Certificate2Collection findResult = certificatesInStore.Find(X509FindType.FindByThumbprint,certThumbPrint, true);
               X509Certificate2 clientCertificate = null;
               if (findResult.Count == 1)
               {
                   clientCertificate = findResult[0];
               }
               else
               {
                   throw new Exception("Unable to locate the correct client certificate.");
               }
               return clientCertificate;
           }
           catch
           {
               throw;
           }
           finally
           {
               userCaStore.Close();
           }
       }

0 Ответов