Данный компонент предназначен для аутентификации пользователей в web-приложениях системы по протоколу OpenID Connect и является обязательным для инсталляций системы под управлением ОС Linux и дополнительным для инсталляций под управлением ОС Windows.
OpenID Connect (OIDC) - это протокол аутентификации и авторизации, разработанный на основе OAuth 2.0, который добавляет слой идентификации к протоколу OAuth. Он позволяет приложениям проверять идентичность пользователя и получать информацию о нем от провайдера идентификации (Identity Provider, IdP). |
Отредактируйте файл appsettings.json, который находится по следующему пути:
Откройте файл appsettings.json в текстовом редакторе, запущенном от имени Администратора:
"clientSecret" - генерируется Мастером настройки Indeed CM для каждого приложения. Значения доступны в файле oidc_secrets.json, который будет создан в директории конфигурационных файлов Мастера настройки.
{ "managementConsoleClientSecret": "9d5d705e1cf5c12b2a5432c5a40c711e6505e939ca2d7cf0df48fc505c022329", "selfServiceClientSecret": "319e8b577563b7c6f27653d72b49659d16f06e0a150fd3a224002c778432319d", "webApiClientSecret": "9a9c56e5e8090c7fbcdffcc13537fc60d7a2f8547cc92131893e88cf08a7d5f9" } |
Заполните секцию "signingCertificateThumbprint", указав Отпечаток сертификата подписи (Thumbprint). В качестве сертификата подписи можно использовать SSL/TLS-сертификат, используемый для работы веб-сервера Indeed CM.
В ОС Linux для работы .Net Core необходимо предоставить файл .pfx без пароля, содержащий сертификат, Отпечаток (Thumbprint), которого указан в поле "signingCertificateThumbprint" и закрытый ключ. |
Для создания такого файла потребуются сертификат и закрытый ключ, которые были созданы на этапе настройки веб-сервера NGINX или Apache, или создайте их заново с помощью следующих команд (необходимо подставить имя импортированного pfx файла вместо PFXFILE) :
openssl pkcs12 -in PFXFILE.pfx -chain -nokeys | sed -ne '/-BEGIN CERTIFICATE/,/END CERTIFICATE/p' > SSL.crt openssl pkcs12 -in PFXFILE.pfx -nocerts -out SSLencrypted.key openssl rsa -in SSLencrypted.key -out SSL.key rm -f SSLencrypted.key |
Затем создайте директорию в домашнем каталоге пользователя, из под которого происходит настройка сервера Indeed CM, и создайте в этом каталоге файл .pfx без пароля с помощью утилиты openssl:
mkdir -p ~/.dotnet/corefx/cryptography/x509stores/my/ openssl pkcs12 -export -out ~/.dotnet/corefx/cryptography/x509stores/my/SSL.pfx -inkey SSL.key -in SSL.crt |
Заполните секцию "authentication", указав метод аутентификации пользователей, который будет использовать сервер OIDC. В зависимости от расположения сервера системы и ОС, может быть указан следующий метод: Windows или WindowsCustom.
Для инсталляций системы под управлением ОС Windows доступны два метода: Windows или WindowsCustom.
Для инсталляций системы под управлением ОС Linux доступен только метод WindowsCustom.
Windows - используется, если сервер системы развернут на доменной рабочей станции под управлением ОС Windows. Для данного метода не требуется заполнение раздела "ldap". |
domainNetbiosName - NetBIOS-имя домена.
Чтобы узнать DNS-имя домена и NetBIOS-имя домена, выполните в командной строке: set USERDNSDOMAIN - выводит DNS-имя домена |
"ldap": { "directories": [ { "server": "dc.demo.local", "port": 389, "secureSocketLayer": false, "verifyServerCertificate": false, "authType": "Basic", "userName": "DEMO\\servicecm", "password": "Q1w2e3r4", "domainDnsName": "demo.local", "domainNetbiosName": "DEMO" } ] }, |
Сохраните внесенные изменения в файл конфигурации сервера OpenID Connect в файле appsettings.json.
{ |
{ |