2016-06-21 3 views
0

Я занимаюсь созданием веб-Api, который будет использоваться для интеграции Xero с CRM-системой. Web Api будет реализовывать OAuth для распознавания каждого запроса клиента. Xero Api утверждает, что если ваше приложение является приватным приложением, вам необходимо создать пару ключей сертификатов.Хранение и управление сертификатами X509 в .Net

enter image description here Теперь мы будем использовать ту же услугу для нескольких наших клиентов, поэтому это означает, что мне нужно будет создать и сохранить сертификаты X509. Так как мне нужно будет сопоставить каждый сертификат с пользователем, какой был бы лучший способ продолжить это? Будет ли хранить сертификаты в базе данных? Или есть лучший способ? Я немного искал язык и ничего не мог найти, следовательно, вопрос.

ответ

0

Вы можете сохранить его на сервере в виде файлов или сохранить его в базе данных. Вы можете сохранить его в локальной системе, используя следующий код.

X509Store store = new X509Store ("teststore", StoreLocation.CurrentUser); 

store.Open (OpenFlags.ReadWrite); 

X509Certificate2 certificate = new X509Certificate2(); 

X509Certificate2 certificate1 = new X509Certificate2 ("c:\\mycerts\\*****.cer"); 

, если вы собираетесь хранить в базе данных преобразовать его в байт [] и хранить его

+0

Я знаю, что, как мы можем хранить X509Certificate. То, что я пытаюсь спросить, - это то, что лучше всего хранить. Кроме того, ответ, который вы предоставили, чтобы сохранить его в X509Store, не помогает мне, так как нет возможности узнать, какой клиент сопоставляется с каким сертификатом. –