В настоящем приложении описан порядок регистрации в БД JAS доверенных сертификатов альянса FIDO для обеспечения возможности работы с U2F-аутентификаторами, а также удаления, обновления и получения списка указанных сертификатов.
Управление сертификатами осуществляется путём обращения к соответствующему API продукта посредством вызова методов (POST, PUT, DELETE) протокола http.
Примечание. Для выполнения http-запросов можно использовать любую утилиту командной строки для работы с протоколом http, например кроссплатформенную утилиту CURL.
Регистрация сертификата
Регистрация FIDO-сертификата в БД JMS выполняется вызовом POST-метода следующего формата:
POST <адрес API>{ "ExternalId" : "<уникальный идентификатор сертификата>", "CertificateBody" : "<тело сертификата в кодировке base64 >", "Thumbprint" : "<отпечаток сертификата>", "Enabled" : <флаг доступности сертификата для проверки true/false>}Например:
POST http://localhost:8219/api/v4.1/config/fidocert{ "ExternalId" : "bdc5c250-8251-46db-854f-283fc790c49e", "CertificateBody" : "WTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQbcrSVr0Bb9OWM2xXiyM8ogH1A4CvnpYqetSVwhtq3ssomgBMcEpI1jXaonv5qk3sPrwJs9Ccu0Wv5R5DlbN+eMAoGCCqGSM49BAMCA0gAMEUCIQDSJkXRNnnc9Z0zKdSn4ApENimxjtHG7M65ZifFImaviAIgFbWVz1ZU99PyqHdwiGVAcWY9NQnfQm/7sShktyIKwaE=", "Thumbprint" : "2CE4D90BF553B28C45E20B828F955582E9D6CCAE", "Enabled" : true}При успешном выполнении метода возвращается ответ следующего вида:
{ "ExternalId": "bdc5c250-8251-46db-854f-283fc790c49e", "CertificateBody": "WTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQbcrSVr0Bb9OWM2xXiyM8ogH1A4CvnpYqetSVwhtq3ssomgBMcEpI1jXaonv5qk3sPrwJs9Ccu0Wv5R5DlbN+eMAoGCCqGSM49BAMCA0gAMEUCIQDSJkXRNnnc9Z0zKdSn4ApENimxjtHG7M65ZifFImaviAIgFbWVz1ZU99PyqHdwiGVAcWY9NQnfQm/7sShktyIKwaE=", "Thumbprint": "2CE4D90BF553B28C45E20B828F955582E9D6CCAE", "Enabled": true}Удаление сертификата
Удаление FIDO-сертификата из БД JMS выполняется вызовом DELETE-метода следующего формата:
DELETE <адрес API>{ "ExternalId" : "<уникальный идентификатор сертификата>"}Например:
DELETE http://localhost:8219/api/v4.1/config/fidocert{ "ExternalId" : "bdc5c250-8251-46db-854f-283fc790c49e"}При успешном выполнении метода возвращается ответ следующего вида:
trueОбновление сертификата
Чтобы заменить FIDO-сертификат в БД JMS, следует выполнить вызов PUT-метода следующего формата:
PUT <адрес API>{ "ExternalId" : "<уникальный идентификатор сертификата>", "CertificateBody" : "<тело сертификата в кодировке base64 >", "Thumbprint" : "<отпечаток сертификата>", "Enabled" : <флаг доступности сертификата для проверки true/false>}{ "ExternalId" : "<уникальный идентификатор сертификата>"}Например:
PUT http://localhost:8219/api/v4.1/config/fidocert{ "ExternalId" : "bdc5c250-8251-46db-854f-283fc790c49e", "CertificateBody" : "WTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQbcrSVr0Bb9OWM2xXiyM8ogH1A4CvnpYqetSVwhtq3ssomgBMcEpI1jXaonv5qk3sPrwJs9Ccu0Wv5R5DlbN+eMAoGCCqGSM49BAMCA0gAMEUCIQDSJkXRNnnc9Z0zKdSn4ApENimxjtHG7M65ZifFImaviAIgFbWVz1ZU99PyqHdwiGVAcWY9NQnfQm/7sShktyIKwaE=", "Thumbprint" : "2CE4D90BF553B28C45E20B828F955582E9D6CCAE", "Enabled" : false}При успешном выполнении метода возвращается ответ следующего вида:
trueПолучение списка сертификатов
Чтобы получить список зарегистрированных в БД JMS FIDO-сертификатов, следует выполнить вызов POST-метода следующего формата:
POST <адрес API>{ "Start" : <порядковый номер сертификата, начиная с которого нужно отобразить список; нумерация начинается с нуля>, "Size" : <максимальное число сертификатов для вывода>}Например:
POST http://localhost:8219/api/v4.1/config/fidocert/search{ "Start" : 0, "Size" : 100}При успешном выполнении метода возвращается список сертификатов следующего вида:
{ "Entities": [ { "ExternalId": "bdc5c250-8251-46db-854f-283fc790c49e", "CertificateBody": "WTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQbcrSVr0Bb9OWM2xXiyM8ogH1A4CvnpYqetSVwhtq3ssomgBMcEpI1jXaonv5qk3sPrwJs9Ccu0Wv5R5DlbN+eMAoGCCqGSM49BAMCA0gAMEUCIQDSJkXRNnnc9Z0zKdSn4ApENimxjtHG7M65ZifFImaviAIgFbWVz1ZU99PyqHdwiGVAcWY9NQnfQm/7sShktyIKwaE=", "Thumbprint": "2CE4D90BF553B28C45E20B828F955582E9D6CCAE", "Enabled": false } ], "TotalCount": 1}