diff --git a/web/ASC.Web.Client/public/locales/ru/SingleSignOn.json b/web/ASC.Web.Client/public/locales/ru/SingleSignOn.json index 4e03b039ca..c39194c867 100644 --- a/web/ASC.Web.Client/public/locales/ru/SingleSignOn.json +++ b/web/ASC.Web.Client/public/locales/ru/SingleSignOn.json @@ -9,23 +9,23 @@ "CustomEntryButton": "Пользовательская надпись для кнопки входа:", "CustomEntryButtonPlaceholder": "Single Sign-on", "CustomEntryTooltip": "Надпись для кнопки, которая используется для входа на портал с помощью сервиса Single Sign-on", - "DecryptStatements": "Расшифровывать утверждения", "DownloadMetadataXML": "Скачать XML-файл метаданных поставщика сервиса", "EmptyFieldErrorMessage": "Поле не заполнено", - "EndpointURL": "URL-адрес конечной точки единого входа IdP:", - "EndpointURLTooltip": "URL-адрес, используемый для единого входа на стороне поставщика учетных записей", + "Encryption": "шифрование", "FirstName": "Имя", + "GenerateCertificate": "Сгенерировать новый самоподписанный сертификат ", "Hide": "Скрыть", "HideAdditionalParameters": "Скрыть дополнительные параметры", "HideAuthPage": "Скрыть страницу аутентификации", "LastName": "Фамилия", "Location": "Местоположение", + "LogoutEndpointUrl": "URL-адрес конечной точки единого выхода IdP:", + "LogoutEndpointUrlTooltip": "URL-адрес, используемый для единого выхода на стороне поставщика сервиса", "NameIDFormat": "Формат NameID:", "NewCertificate": "Новый сертификат", "OpenCertificate": "Открытый сертификат:", - "OpenCertificates": "Открытые сертификаты поставщика учетных записей: ", - "OpenCertificatesTooltip": "Открытые сертификаты поставщика учетных записей, используемые или для проверки, или для расшифровки (или для того и другого) запросов и ответов от поставщика учетных записей", "Or": "или", + "PrivateKey": "Закрытый ключ:", "ProviderCertificates": "Сертификаты поставщика сервиса", "ProviderURL": "Идентификатор сущности поставщика учетных записей:", "ProviderURLTooltip": "Идентификатор сущности поставщика учетных записей (URL-адрес поставщика)", @@ -40,10 +40,10 @@ "ServiceProviderSettings": "Настройки поставщика сервиса", "Show": "Показать", "ShowAdditionalParameters": "Показать дополнительные параметры", - "SignAuthRequest": "Подписывать запросы аутентификации", - "SignExitRequest": "Подписывать запросы выхода", - "SignResponseRequest": "Подписывать ответы выхода", - "SigningAlgorithm": "Алгоритм подписи:", + "SignOnEndpointUrl": "URL-адрес конечной точки единого входа IdP:", + "SignOnEndpointUrlTooltip": "URL-адрес, используемый для единого входа на стороне поставщика учетных записей", + "Signing": "подпись", + "SigningAndEncryption": "подпись и шифрование", "StandardDecryptionAlgorithm": "Стандартный алгоритм расшифровки:", "Title": "Должность", "TurnOnSSO": "Включить аутентификацию с помощью технологии единого входа", @@ -51,7 +51,21 @@ "TurnOnSSOTooltip": "Включите эту опцию, если вы хотите автоматически добавить на портал пользователей из сервиса SSO", "UploadXML": "Для автоматического заполнения необходимых полей загрузите метаданные из XML-файла", "UploadXMLPlaceholder": "URL адрес XML-файла метаданных", + "UsedFor": "Использовать для", "emailErrorMessage": "Неверный формат электронной почты", + "idpAuthRequest": "Проверять подпись ответов аутентификации", + "idpCertificates": "Открытые сертификаты поставщика учетных записей: ", + "idpCertificatesTooltip": "Открытые сертификаты поставщика учетных записей, используемые или для проверки, или для расшифровки (или для того и другого) запросов и ответов от поставщика учетных записей", + "idpSignExitRequest": "Проверять подпись запросов выхода", + "idpSignResponseRequest": "Проверять подпись ответов выхода", + "idpSigningAlgorithm": "Стандартный алгоритм проверки подписи:", "phoneErrorMessage": "Неверный формат номера телефона", + "spAuthRequest": "Подписывать запросы аутентификации", + "spCertificates": "Сертификаты поставщика сервиса", + "spCertificatesTooltip": "Сертификаты поставщика сервиса, используемые для подписи и шифрования запросов и ответов от поставщика сервиса", + "spDecryptStatements": "Расшифровывать утверждения", + "spSignExitRequest": "Подписывать запросы выхода", + "spSignResponseRequest": "Подписывать ответы выхода", + "spSigningAlgorithm": "Алгоритм подписи:", "urlErrorMessage": "Недопустимый URL-адрес" -} \ No newline at end of file +} diff --git a/web/ASC.Web.Client/src/components/pages/Settings/categories/integration/SingleSignOn/Certificates.js b/web/ASC.Web.Client/src/components/pages/Settings/categories/integration/SingleSignOn/Certificates.js new file mode 100644 index 0000000000..1f095a915a --- /dev/null +++ b/web/ASC.Web.Client/src/components/pages/Settings/categories/integration/SingleSignOn/Certificates.js @@ -0,0 +1,123 @@ +import React from "react"; +import { observer } from "mobx-react"; + +import Box from "@appserver/components/box"; +import Button from "@appserver/components/button"; +import HelpButton from "@appserver/components/help-button"; +import Text from "@appserver/components/text"; + +import AddIdpCertificateModal from "./sub-components/AddIdpCertificateModal"; +import AddSpCertificateModal from "./sub-components/AddSpCertificateModal"; +import CheckboxSet from "./sub-components/CheckboxSet"; +import HideButton from "./sub-components/HideButton"; +import PropTypes from "prop-types"; +import SimpleComboBox from "./sub-components/SimpleComboBox"; +import { + decryptAlgorithmsOptions, + verifyAlgorithmsOptions, +} from "./sub-components/constants"; + +const Certificates = ({ FormStore, t, provider }) => { + let prefix = ""; + + switch (provider) { + case "IdentityProvider": + prefix = "idp"; + break; + case "ServiceProvider": + prefix = "sp"; + } + + return ( + + + + {t(`${prefix}Certificates`)} + + + + + + + {prefix === "idp" && ( + <> +