2017-01-16 3 views
3

У меня есть back-end REST, который можно использовать на основе проверки подлинности X509 с использованием сертификата клиента.Угловая аутентификация 2 x509 от клиента к серверу REST

Теперь у меня есть front-end, написанный в Angular 2, который также должен использовать аутентификацию X509 и далее предоставлять его в REST back-end.

Что я не понимаю, так это то, как перенаправить клиентский сертификат из интерфейса Angular 2 в REST для аутентификации. Возможно ли это, или я должен использовать один домен безопасности как аутентификацию X509 между интерфейсом front-end и client и вторым доменом безопасности в качестве аутентификации X509 между интерфейсом и внутренним концом?

+0

У меня точно такая же проблема, вам удались найти решение с тех пор? – Sleeper9

ответ

1

Если вы используете сервер Apache2 httpd для размещения своего приложения Angular2, вы можете установить mod_ssl в свою систему, который зависит от операционной системы.

После установки mod_ssl создается новый файл конфигурации. В моем случае он находится по адресу: /etc/httpd/conf.d/ssl.conf. Разместите следующую конфигурацию, настройте для своего случая использования, конечно.

Вам необходимо иметь сертификат CA и сертификат сервера, подписанный этим ЦС, а также закрытый ключ сервера.

<VirtualHost *:443> 
     SSLEngine On 
     SSLCertificateFile /var/www/html/certs/localhost.crt 
     SSLCertificateKeyFile /var/www/html/certs/key.pem 
     SSLCACertificateFile /var/www/html/certs/ca.crt 
     SSLVerifyClient require 
     SSLVerifyDepth 2 
     SSLOptions +ExportCertData 
     ServerAdmin [email protected] 
     ServerName localhost 
     DocumentRoot /var/www/html 
     ErrorLog /var/www/logs/error.log 
     CustomLog /var/www/logs/access.log combined 
     ProxyPass /services ajp://localhost:8009/services 
     ProxyPassReverse /services ajp://localhost:8009/services 
     SSLOptions +ExportCertData 
     DocumentRoot /var/www/html 
      <Directory /var/www> 
        Options -Indexes 
        Order allow,deny 
        Allow from all 
    </Directory> 

</VirtualHost> 

После перезагрузки apache2, он теперь будет запрашивать у пользователя сертификат, и направить этот сертификат на заднем конец благодарность SSLOptions + ExportCertData

Смежные вопросы