сервис_oauth2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
сервис_oauth2 [2022/05/17 10:09]
val [Gitlab]
сервис_oauth2 [2023/11/06 11:23]
val [Подключение БД пользователей Kerberos]
Line 7: Line 7:
   * [[https://​www.ory.sh/​run-oauth2-server-open-source-api-security/​|ORY Hydra Run your own OAuth2 Server]]   * [[https://​www.ory.sh/​run-oauth2-server-open-source-api-security/​|ORY Hydra Run your own OAuth2 Server]]
   * [[https://​www.ory.sh/​hydra/​docs/​5min-tutorial/​|ORY Hydra 5 Minute Tutorial]]   * [[https://​www.ory.sh/​hydra/​docs/​5min-tutorial/​|ORY Hydra 5 Minute Tutorial]]
 +  * [[https://​github.com/​goauthentik/​authentik]]
  
 ===== Gitlab ===== ===== Gitlab =====
Line 12: Line 13:
   * Инструмент GitLab [[Инструмент GitLab#​Сервер OAuth2]]   * Инструмент GitLab [[Инструмент GitLab#​Сервер OAuth2]]
  
-===== OpenID Connect authentication module for Apache ​=====+===== Keycloak ​=====
  
-  ​* [[https://github.com/zmartzone/mod_auth_openidc|Аuthenticates users of a web site against an OpenID Connect Identity Provider or an OAuth 2.0 Authorization Server]]+==== Установка,​ запуск и базовая конфигурация ==== 
 +  ​* [[https://www.keycloak.org/getting-started/getting-started-zip|Get started with Keycloak on bare metal]] 
 +  * [[Сервис JRE]] 
 +  * [[Пакет OpenSSL#​Создание самоподписанного сертификата]]
  
 <​code>​ <​code>​
-apt install libapache2-mod-auth-openidc+serverwget https://​github.com/​keycloak/​keycloak/​releases/​download/​22.0.5/​keycloak-22.0.5.zip 
 + 
 +server:​~/​keycloak-22.0.5# KEYCLOAK_ADMIN=root KEYCLOAK_ADMIN_PASSWORD='​strongpassword'​ bin/kc.sh start-dev --https-certific=/​root/​server.crt --https-certificate-key-file=/​root/​server.key
 </​code>​ </​code>​
  
-==== GitLab ==== +  ​* https://server.corp13.un:​8443/
- +
-  ​[[https://github.com/​zmartzone/​mod_auth_openidc/​wiki/GitLab-OAuth2]]+
  
 <​code>​ <​code>​
-# cat /​etc/​apache2/​sites-available/default-ssl.conf +Create Realm->​myrealm 
-</​code>​<​code>​ +  Users 
-... +    Add User 
-OIDCProviderMetadataURL https://​gitlab.bmstu.ru/​.well-known/​openid-configuration +      user1/password1 
-OIDCClientID 802..........................................................4c8 +</​code>​
-OIDCClientSecret 991..........................................................5e7 +
-OIDCRedirectURI https://​val.bmstu.ru/​auth-test +
-OIDCCryptoPassphrase h...any.....string.....j+
  
-     <Directory /​home/​val/​auth-test+==== Аутентификация пользователей WEB приложения ==== 
-         Options ExecCGI Indexes FollowSymLinks + 
-         AddHandler cgi-script .cgi +<code      
-         DirectoryIndex env.cgi +  ​Create Client 
-         ​AuthType openid-connect +    ​Client ID: test-cgi 
-         ​Require valid-user +    Valid redirect URIs: http://gate.corp13.un/cgi-bin/test-cgi
-     </Directory>​ +
-     Alias /auth-test "/​home/​val/​auth-test"​ +
-...+
 </​code>​ </​code>​
  
-==== Тестирование ​====+  * [[Сервис HTTP#​Управление доступом к HTTP серверу с использованием OAuth2 аутентификации]]
  
-  ​!!! В настройках URL без финального "/",​ при подключении обязательно с ним !!!+==== Подключение БД пользователей Kerberos ==== 
 + 
 +  ​[[https://​habr.com/​ru/​companies/​slurm/​articles/​661209/​|Как ​настроить Kerberos ​аутентификации в Keycloak]] 
 + 
 +  * [[Настройка KDC серверов и клиентов#​Настройка KDC]] 
 +  * [[Регистрация ключей принципалов в KDC#​Регистрация принципалов пользователей в базе данных kerberos]] 
 +  * Создание принципала HTTP/​server.corp13.un@CORP13.UN по аналогии ​с [[Аутентификация доступа к SQUID]]
  
 <​code>​ <​code>​
-https://val.bmstu.ru/auth-test/+User federation 
 +  Kerberos 
 +    UI display nameCORP13 
 +    Kerberos realm: CORP13.UN 
 +    Server principal: HTTP/server.corp13.un@CORP13.UN 
 +    Key tab: /etc/krb5.keytab 
 +    Allow password authentication:​ yes 
 + 
 +Authentication 
 +  browser 
 +    Kerberos: Disabled  
 +      (иначе появляется всплывающее окно аутентификации,​ можно оставить если пользователи в домене) 
 +      ​
 </​code>​ </​code>​
сервис_oauth2.txt · Last modified: 2023/11/07 09:39 by val