Для осуществления инициализации создайте новые экземпляры следующих компонентов: TransportSecurityProvider , CredentialProvider , и ApiHttpClient .
TransportSecurityProvider
TransportSecurityProvider необходимо инициализировать реализацией TlsProvider , используя перечисленные ниже параметры.
Внимание
Для корректного заполнения параметров необходимо наличие хранилища доверенных сертификатов и хранилища ключей. Инструкция по их созданию находится в разделе Создание TrustStore и KeyStore.
| Параметр | Описание |
|---|---|
keyStorePath |
Путь к хранилищу, содержащему клиентский сертификат и ключ |
keyStorePassword |
Пароль для хранилища ключей |
privateKeyAlias |
Алиас сертификата (должен совпадать с keyStorePassword ) |
trustStorePath |
Путь к хранилищу доверенных сертификатов |
trustStorePassword |
Пароль для хранилища доверенных сертификатов |
CredentialProvider
CredentialProvider необходимо инициализировать одной из реализаций в зависимости от способа авторизации:
-
•
BearerTokenProvider- для авторизации по токену доступа, полученному с помощью Alfa ID. -
•
ApiKeyProvider- для авторизации поAPI Keyв H2H-интеграциях. Подробнее о выпуске и управлении ключом доступа читайте в статье API Key.
ApiHttpClient
ApiSyncHttpClient инициализируется с использованием адреса API (Песочница - https://sandbox.alfabank.ru; Промышленный - https://baas.alfabank.ru) и вышеописанных объектов.
Пример инициализации обязательных компонентов с BearerTokenProvider
1TransportSecurityProvider transportSecurityProvider = new TlsProvider(
2 TlsProvider.TlsProperties.builder()
3 .keyStorePath("<path to your keystore>")
4 .keyStorePassword("<password for your keystore>")
5 .privateKeyAlias("<alia for private-key entry in keystore>")
6 .trustStorePath("<path to your truststore>")
7 .trustStorePassword("<password for your truststore>")
8 .build()
9);
10CredentialProvider credentialProvider = new BearerTokenProvider("<your access token here>");
11ApiHttpClient apiHttpClient = new ApiSyncHttpClient("<service url>", transportSecurityProvider, credentialProvider);