#azure #react-native #ssl #pinning
#azure #react-native #ssl #закрепление
Вопрос:
Я хочу реализовать закрепление SSL в своем приложении react native, как показывают результаты теста PEN. Наш сервер API находится в Azure. Когда я поискал в Google для закрепления SSL, я обнаружил, что нам нужно сгенерировать сертификат с помощью команд openssl. Но я получаю сообщение об ошибке
s_client: -connect argument or target parameter malformed or ambiguous
unable to load certificate
4565851584:error:0909006C:PEM routines:get_name:no start line:crypto/pem/pem_lib.c:745:Expecting: TRUSTED CERTIFICATE
unable to load Public Key
4369083840:error:0909006C:PEM routines:get_name:no start line:crypto/pem/pem_lib.c:745:Expecting: PUBLIC KEY
47DEQpj8HBSa /TImW 5JCeuQeRkm5NMpJWZG3hSuFU=
Я использовал следующую команду:
openssl s_client -servername <AZURE API SERVERNAME> -connect <AZURE API SERVERNAME>:443 | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64
Я перехожу по этой ссылке
https://itnext.io/react-native-security-ssl-pinning-cde086210d58
Есть ли что-то, что нам нужно сначала сделать на портале Azure. Мне нужна помощь в этом. Если кто-то уже выполнял закрепление SSL в приложении React Native с сервером Azure, пожалуйста, поделитесь ссылкой в качестве ссылки.
Комментарии:
1. Не могли бы вы поделиться своим кодом с помощью SSL Pinning?
2. Привет @user1295308 у вас есть какое-либо решение?
Ответ №1:
Пожалуйста, попробуйте выполнить эти 2 шага перед запуском этой команды OpenSSL:
- ping {ИМЯ СЕРВЕРА AZURE API}
- telnet {ИМЯ СЕРВЕРА AZURE API} {порт}
Если {AZURE API SERVERNAME} не является общедоступным доменом / IP-адресом, пожалуйста, обязательно добавьте его в файл hosts (в Windows) или Keychain (macOS).
Если указанные выше 2 проверки пройдут успешно, ваш OpenSSL сможет нормально возвращать правильное значение.