Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Чтобы предотвратить несанкционированный доступ к кластеру Service Fabric, необходимо защитить кластер. Безопасность особенно важна при выполнении рабочих нагрузок кластера. В этой статье описывается, как настроить безопасность "узел — узел" и "клиент — узел" с помощью безопасности Windows в файле ClusterConfig.JSON . Процесс соответствует настройке этапа безопасности создания автономного кластера, работающего в Windows. Дополнительные сведения о том, как Service Fabric использует безопасность Windows, см. в сценариях безопасности кластера.
Примечание.
Следует тщательно рассмотреть возможность выбора безопасности между узлами, так как обновление кластера от одного варианта безопасности до другого не выполняется. Чтобы изменить выбор безопасности, необходимо перестроить полный кластер.
Настройка безопасности Windows с помощью gMSA
gMSA является предпочтительной моделью безопасности. Пример файла конфигурации ClusterConfig.gMSA.Windows.MultiMachine.JSON, скачанный с помощью Microsoft.Azure.ServiceFabric.WindowsServer.<версия>.zip автономный пакет кластера содержит шаблон для настройки безопасности Windows с помощью групповой управляемой учетной записи службы (gMSA):
"security": {
"ClusterCredentialType": "Windows",
"ServerCredentialType": "Windows",
"WindowsIdentities": {
"ClustergMSAIdentity": "[gMSA Identity]",
"ClusterSPN": "[Registered SPN for the gMSA account]",
"ClientIdentities": [
{
"Identity": "domain\\username",
"IsAdmin": true
}
]
}
}
Параметр конфигурации | Описание |
---|---|
Тип учетных данных кластера (ClusterCredentialType) | Установите Windows, чтобы включить безопасность Windows для обмена данными между узлами. |
ТипУчетныхДанныхСервера | Установите значение Windows , чтобы включить безопасность Windows для обмена данными с клиентским узлом. |
WindowsIdentities | Содержит идентификаторы кластера и клиента. |
ClustergMSAIdentity | Настраивает безопасность между узлами. Управляемая служебная учетная запись для группы. Должен иметь формат "mysfgmsa@mydomain". |
ClusterSPN | Зарегистрированная учетная запись субъекта-службы для учетной записи gMSA |
ClientIdentities | Настраивает безопасность клиент-сервер. Массив учетных записей пользователей клиента. |
Идентичность | Добавьте пользователя домена, домен\имя_пользователя, для идентификации клиента. |
IsAdmin | Задайте значение true, чтобы указать, что у пользователя домена есть доступ к клиенту администратора или false для доступа к клиенту пользователя. |
Безопасность от узла к узлу настраивается посредством указания параметра ClustergMSAIdentity, когда Service Fabric необходимо запустить под учетной записью gMSA. Чтобы создать отношения доверия между узлами, они должны быть осведомлены друг о другом. Это можно сделать двумя способами: укажите групповую управляемую учетную запись службы, которая включает все узлы в кластере; или укажите группу компьютеров домена, включающую все узлы в кластере. Настоятельно рекомендуется использовать подход групповой управляемой учетной записи службы (gMSA), особенно для больших кластеров (более 10 узлов) или для кластеров, которые, скорее всего, будут увеличиваться или уменьшаться.
Этот подход не требует создания группы домена, для которой администраторы кластера получили права доступа для добавления и удаления участников. Эти учетные записи также полезны для автоматического управления паролями. Дополнительные сведения см. в разделе начало работы с групповыми управляемыми учетными записями служб.
Безопасность при подключении клиента к узлу настраивается с помощью ClientIdentities. Чтобы установить доверие между клиентом и кластером, необходимо настроить кластер так, чтобы он знал, каким удостоверениям клиента можно доверять. Это можно сделать двумя разными способами: укажите пользователей группы домена, которые могут подключаться или указывать пользователей узла домена, которые могут подключаться. Service Fabric поддерживает два разных типа управления доступом для клиентов, подключенных к кластеру Service Fabric: администратор и пользователь. Управление доступом позволяет администратору кластера ограничить доступ к определенным типам операций кластера для разных групп пользователей, что делает кластер более безопасным. Администраторы имеют полный доступ к возможностям управления (включая возможности чтения и записи). Пользователи по умолчанию имеют доступ только на чтение к управленческим функциям (например, при работе с запросами) и возможность решения проблем приложений и служб. Дополнительные сведения об элементах управления доступом см. в разделе "Управление доступом на основе ролей" для клиентов Service Fabric.
В следующем примере раздел безопасности настраивает безопасность Windows с помощью gMSA и указывает, что компьютеры в ServiceFabric.clusterA.contoso.com gMSA являются частью кластера, а contoso\usera имеет доступ к клиенту администратора:
"security": {
"ClusterCredentialType": "Windows",
"ServerCredentialType": "Windows",
"WindowsIdentities": {
"ClustergMSAIdentity" : "ServiceFabric.clusterA.contoso.com",
"ClusterSPN" : "http/servicefabric/clusterA.contoso.com",
"ClientIdentities": [{
"Identity": "CONTOSO\\usera",
"IsAdmin": true
}]
}
}
Настройка безопасности Windows с помощью группы компьютеров
Как описано выше, gMSA предпочтителен, но он также поддерживается для использования этой модели безопасности. Пример файла конфигурации ClusterConfig.Windows.MultiMachine.JSON. Загруженный вместе с Microsoft.Azure.ServiceFabric.WindowsServer.<версией>.zip автономного пакета кластеров, он содержит шаблон для настройки безопасности Windows. Безопасность Windows настроена в разделе "Свойства" :
"security": {
"ClusterCredentialType": "Windows",
"ServerCredentialType": "Windows",
"WindowsIdentities": {
"ClusterIdentity" : "[domain\machinegroup]",
"ClientIdentities": [{
"Identity": "[domain\username]",
"IsAdmin": true
}]
}
}
Параметр конфигурации | Описание |
---|---|
ТипУчетныхДанныхКластера | Установите Windows, чтобы включить безопасность Windows для обмена данными между узлами. |
Тип Удостоверения Сервера | Установите значение Windows , чтобы включить безопасность Windows для обмена данными с клиентским узлом. |
WindowsIdentities | Содержит идентификаторы кластера и клиента. |
ClusterIdentity | Используйте имя группы компьютеров, домен\machinegroup, чтобы настроить безопасность узла к узлу. |
Идентификаторы клиентов | Настраивает безопасность между клиентом и узлом. Массив учетных записей пользователей клиента. |
Идентичность | Добавьте пользователя домена, в формате домен\имя_пользователя, для идентификации клиента. |
IsAdmin | Задайте значение true, чтобы указать, что у пользователя домена есть доступ к клиенту администратора или false для доступа к клиенту пользователя. |
Безопасность узла на узле настраивается с помощью параметра ClusterIdentity , если вы хотите использовать группу компьютеров в домене Active Directory. Дополнительные сведения см. в статье "Создание группы компьютеров" в Active Directory.
Безопасность "клиент — узел " настраивается с помощью ClientIdentities. Чтобы установить доверие между клиентом и кластером, необходимо настроить кластер для определения удостоверений клиента, которым может доверять кластер. Доверие можно установить двумя разными способами:
- Укажите пользователей группы домена, которые могут подключаться.
- Укажите пользователей узла домена, которые могут подключаться.
Service Fabric поддерживает два разных типа управления доступом для клиентов, подключенных к кластеру Service Fabric: администратор и пользователь. Управление доступом позволяет администратору кластера ограничить доступ к определенным типам операций кластера для разных групп пользователей, что делает кластер более безопасным. Администраторы имеют полный доступ к возможностям управления (включая возможности чтения и записи). Пользователи по умолчанию имеют только доступ на чтение к возможностям управления (например, возможностям запросов) и к функциям работы с приложениями и службами.
В следующем примере раздел безопасности настраивает безопасность Windows, указывает, что компьютеры в ServiceFabric/clusterA.contoso.com являются частью кластера и указывают, что contoso\usera имеет доступ к клиенту администратора:
"security": {
"ClusterCredentialType": "Windows",
"ServerCredentialType": "Windows",
"WindowsIdentities": {
"ClusterIdentity" : "ServiceFabric/clusterA.contoso.com",
"ClientIdentities": [{
"Identity": "CONTOSO\\usera",
"IsAdmin": true
}]
}
},
Примечание.
Service Fabric не следует развертывать на контроллере домена. Убедитесь, что ClusterConfig.json не включает IP-адрес контроллера домена при использовании группы компьютеров или групповой управляемой учетной записи службы (gMSA).
Дальнейшие действия
После настройки безопасности Windows в файле ClusterConfig.JSON возобновите процесс создания кластера в создании автономного кластера, работающего в Windows.
Дополнительные сведения о безопасности между узлами, безопасности клиент-узел и управлении доступом на основе ролей см. в сценариях безопасности кластера.
Примеры подключения с помощью PowerShell или FabricClient см. в разделе "Подключение к безопасному кластеру ".