Показать/Скрыть содержание

    Пример PowerShell-сценария для настройки компонента myDSS

    Данный сценарий выполняет минимально необходимую настройку экземпляра компонента myDSS.

    # Создание экземпляра Сервиса взаимодействия с ЦИ
    New-MyDssServerInternalInstance -SiteName "Default Web Site" -SQLServerName "<sqlservername>" -DisplayName MyDssServerInternal
    
    # Создание экземпляра Сервиса взаимодействия с мобильным приложением myDSS
    New-MyDssServerExternalInstance -SiteName "Default Web Site" -SQLServerName "<sqlservername>" -DisplayName MyDssServerExternal
    
    
    #Настройка экземпляра Сервиса взаимодействия с ЦИ
    
    # Добавление криптопровайдера 
    Add-MyDssServerInternalCryptoProviders -DisplayName MyDssServerInternal -TypeId GostWithMasterKey -ProviderType 80 -ProviderName "Crypto-Pro GOST R 34.10-2012 HSM Svc CSP" 
    
    #Задание адреса сервиса рассылки PUSH-уведомлений
    Set-MyDssServerInternalProperties -DisplayName MyDssServerInternal -InteractionPushServiceAddress "http://<hostname>/MyDssServerExternal/InteractionPushService.svc"
    
    #Задание адреса Сервиса взаимодействия с мобильным приложением myDSS
    Set-MyDssServerInternalProperties -DisplayName MyDssServerInternal -InteractionServiceAddress "http://<hostname>/MyDssServerExternal/InteractionService.svc"
    
    #Задание на ЦИ КриптоПро DSS адреса Сервиса взаимодействия с ЦИ и адреса ЦИ, куда возвращается результат подтверждения операций из мобильного приложения 
    Set-DssMobileAuthProperties -DisplayName <Имя экземпляра ЦИ> -ServiceAddress "http://<hostname>/MyDssServerInternal/service.svc" -CallbackUriPrefix "https://<hostname>/<STSappname>"
    
    
    # Настройка Сервиса взаимодействия с мобильным приложением myDSS 
    Set-MyDssInteractionServiceProperties -DisplayName MyDssServerExternal -ServiceAddress "http://<hostname>/MyDssServerInternal/Service.svc"
    
    # Настройка взаимодействия с серверами рассылки PUSH-уведомлений (Apple Push Notification Service и Firebase Cloud Messaging Server).
    Set-MyDssPushServiceProperties -DisplayName MyDssServerExternal -ApnClientCertPassword P@SSW0RD -ApnClientCertPath C:\apn2019.pfx -GoogleServerKey "eyJ0eXAiOiJKV...5Wti-H8CeXycwB6A"
    

    Настройка оповещения интегрируемой системы

    Модуль аутентификации myDSS может оповещать интегрируемую систему о результате подтверждения операции в мобильном приложении, отправляя в интегрируемую систему соответствующие сообщения. Для настройки такого оповещения необходимо зарегистировать сооветствующие плагин и модуль оповещения.

    # Настройка транспортного плагина
    $plugin = Add-DssStsPlugin -PluginTypeName "CryptoPro.DSS.Identity.Authentication.Notification.HttpTransportPlugin,CryptoPro.DSS.Identity.Authentication.Notification" -PluginType AuthenticationResult -Settings @{}
    
    # Добавление модуля оповещения
    Add-DssStsNotifier -TransportPluginID $plugin.ID -NotifierType AuthenticationResultCallback -Settings @{}
    

    ID плагинов присваиваются автоматически после их добавления.

    Настройка PUSH-уведомлений Huawei

    Примечание

    При разворачивании Сервиса взаимодействия с мобильным приложением myDSS модуль для отправки PUSH-уведомлений на устройства HUAWEI не регистрируется автоматически. Необходима регистрация данного модуля вручную.

    $ClientSecret = "0540A3E2B44015 ... D2A6CA7"
    $ClientId = "12345467890"
    $connStr = Get-MyDssServerExternalRegistryProperties
    
    $transport = Add-MyDssExternalPlugin -PluginTypeName "CryptoPro.DSS.PushService.Notification.HMS.HmsPlugin,CryptoPro.DSS.PushService.Notification"  -PluginType HMS -Settings @{ "ClientSecret"=$ClientSecret; "ClientId"=$ClientId; "ConnectionString"=$connStr }
    
    $formatter = Add-MyDssExternalPlugin -PluginTypeName "CryptoPro.DSS.PushService.Notification.HMS.HmsFormatterPlugin,CryptoPro.DSS.PushService.Notification"  -PluginType Formatter -Settings @{ }
    
    Add-MyDssExternalNotifier -TransportPluginID $transport.ID -FormatterPluginID $formatter.ID -NotifierType HMS -Type "CryptoPro.DSS.PushService.Notification.HMS.HmsNotifier,CryptoPro.DSS.PushService.Notification" -Settings @{}
    

    Отправка уведомлений при помощи Push Proxy требует изменения настроек плагина отправки PUSH-уведомлений.

    # Получение идентификатора модуля оповещения: 
    $HMS_notifier = Get-MyDssExternalNotifier|where {$_.Type -eq "HMS"}
    
    # Настройка подключения к Push Proxy: 
    Set-MyDssExternalPlugin -PluginID $HMS_notifier.TransportPlugin.Id -Settings @{"UsePushProxy"="true";"PushProxyAddress"="http://<hostname>/pushproxy/<hmsproxy>";"PushProxyLogin"="<login>";"PushProxyPassword"="<pwd>"}
    
    В начало © ООО "КРИПТО-ПРО", 2000-2023