Edge для частного облака v. 4.17.09
После включения SAML в Edge вы можете отключить базовую аутентификацию. Однако прежде чем отключить базовую аутентификацию :
- Убедитесь, что вы добавили всех пользователей Edge, включая системных администраторов, в свой SAML IDP.
- Убедитесь, что вы тщательно протестировали аутентификацию SAML в пользовательском интерфейсе Edge и API управления Edge.
- Если вы также используете API BaaS, настройте и протестируйте SAML на API BaaS. См. Включение SAML для API BaaS .
- Если вы используете портал служб разработчиков, настройте и протестируйте SAML на портале, чтобы убедиться, что портал может подключаться к Edge. См. раздел Настройка портала служб разработчиков для использования SAML для связи с Edge .
Просмотр текущего профиля безопасности
Вы можете просмотреть профиль безопасности Edge, чтобы определить текущую конфигурацию и определить, включены ли в данный момент базовая аутентификация и SAML. Используйте следующий вызов API управления Edge на сервере Edge Management Server, чтобы просмотреть текущий профиль безопасности, используемый Edge:
> curl -H "accept:application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord
Если вы еще не настроили SAML, ответ будет показан ниже, что означает, что базовая аутентификация включена:
<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> </UserAccessControl> </SecurityProfile>
Если вы уже включили SAML, вы увидите тег <ssoserver> в выходных данных:
<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> <SSOServer> <BasicAuthEnabled>true</BasicAuthEnabled> <PublicKeyEndPoint>/token_key</PublicKeyEndPoint> <ServerUrl>http://35.197.37.220:9099</ServerUrl> </SSOServer> </UserAccessControl> </SecurityProfile>
Обратите внимание, что версия с включенным SAML также показывает <BasicAuthEnabled>true</BasicAuthEnabled>, что означает, что базовая аутентификация все еще включена.
Отключить базовую аутентификацию
Используйте следующий вызов API управления Edge на Edge Management Server, чтобы отключить базовую аутентификацию. Обратите внимание, что в качестве полезных данных вы передаете объект XML, возвращенный в предыдущем разделе. Единственное отличие состоит в том, что вы устанавливаете <BasicAuthEnabled>false</BasicAuthEnabled> :
> curl -H "Content-Type: application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord -d '<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> <SSOServer> <BasicAuthEnabled>false</BasicAuthEnabled> <PublicKeyEndPoint>/token_key</PublicKeyEndPoint> <ServerUrl>http://35.197.37.220:9099</ServerUrl> </SSOServer> </UserAccessControl> </SecurityProfile>'
После отключения базовой аутентификации любой вызов API управления Edge, который передает учетные данные базовой аутентификации, возвращает следующую ошибку:
<Error> <Code>security.SecurityProfileBasicAuthDisabled</Code> <Message>Basic Authentication scheme not allowed</Message> <Contexts/> </Error>
Повторно включите базовую аутентификацию
Если по какой-либо причине вам необходимо повторно включить базовую аутентификацию, необходимо выполнить следующие шаги:
Внимание ! В рамках повторного включения базовой аутентификации вам необходимо временно отключить всю аутентификацию на Edge, включая SAML.
- Войдите в любой узел Edge ZooKeeper.
- Запустите следующий bash-скрипт, чтобы отключить всю безопасность:
Внимание ! Этот шаг отключает всю аутентификацию на Edge, включая SAML.
#! /бин/баш/opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOFset /system/securityprofile <SecurityProfile></SecurityProfile>покидатьЭОФ
Вы увидите вывод в форме:
Подключение к локальному хосту: 2181
Добро пожаловать в ZooKeeper!
Поддержка JLine включена
НАБЛЮДАТЕЛЬ::Состояние WatchedEvent: Тип SyncConnected: Нет, путь: null[zk: localhost:2181(CONNECTED) 0] set /system/securityprofile <SecurityProfile></SecurityProfile>cZxid = 0x89...
[zk: localhost:2181(CONNECTED) 1] выйти
Выход… - Повторно включите базовую аутентификацию и аутентификацию SAML:
> curl -H "Тип контента: приложение/xml"
Теперь вы снова можете использовать базовую аутентификацию.
http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord -d
'<SecurityProfile Enabled="true" name="securityprofile">
<UserAccessControl Enable="true">
<ССОсервер>
<BasicAuthEnabled>истина</BasicAuthEnabled>
<PublicKeyEndPoint>/token_key</PublicKeyEndPoint>
<ServerUrl>http://35.197.37.220:9099</ServerUrl>
</SSOServer>
</UserAccessControl>
</Профиль Безопасности>'