Po włączeniu SAML lub LDAP w Edge możesz wyłączyć uwierzytelnianie podstawowe. Zanim jednak wyłączysz uwierzytelnianie podstawowe:
- Sprawdź, czy do dostawcy tożsamości dodano wszystkich użytkowników Edge, w tym administratorów systemu.
- Sprawdź, czy uwierzytelnianie dostawcy tożsamości zostało dokładnie przetestowane w interfejsie użytkownika Edge i interfejsie Edge Management API.
- Jeśli korzystasz z portalu Apigee Developer Services (lub portalu), skonfiguruj i przetestuj w nim zewnętrznego dostawcę tożsamości, aby upewnić się, że portal może połączyć się z Edge. Zobacz Konfigurowanie portalu na potrzeby zewnętrznych dostawców tożsamości.
Wyświetl bieżący profil zabezpieczeń
Możesz wyświetlić profil zabezpieczeń brzegowych, aby określić bieżącą konfigurację i określić, czy uwierzytelnianie podstawowe i zewnętrzny dostawca tożsamości są obecnie włączone. Aby wyświetlić bieżący profil zabezpieczeń używany przez Edge, użyj tego wywołania interfejsu Edge Management API na serwerze zarządzania brzegowym:
curl -H "accept:application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord
Jeśli nie masz jeszcze skonfigurowanego zewnętrznego dostawcy tożsamości, odpowiedź wygląda jak poniżej, co oznacza, że uwierzytelnianie podstawowe jest włączone:
<SecurityProfile enabled="true" name="securityprofile"> <UserAccessControl enabled="true"> </UserAccessControl> </SecurityProfile>
Jeśli masz już włączony zewnętrzny dostawca tożsamości, w odpowiedzi powinien pojawić się element <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>
Zwróć uwagę, że wersja z włączonym zewnętrznym dostawcą tożsamości wyświetla też wartość <BasicAuthEnabled>true</BasicAuthEnabled>, co oznacza, że uwierzytelnianie podstawowe jest nadal włączone.
Wyłącz uwierzytelnianie podstawowe
Aby wyłączyć uwierzytelnianie podstawowe, użyj podanego niżej wywołania interfejsu Edge Management API na serwerze zarządzania brzegowym. Obiekt XML zwrócony w poprzedniej sekcji jest przekazywany jako ładunek. Jedyną różnicą jest ustawienie <BasicAuthEnabled>
na false
, jak pokazano w tym przykładzie:
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>'
Po wyłączeniu uwierzytelniania podstawowego każde wywołanie interfejsu Edge Management API, które przekazuje podstawowe dane uwierzytelniające, zwraca ten błąd:
<Error> <Code>security.SecurityProfileBasicAuthDisabled</Code> <Message>Basic Authentication scheme not allowed</Message> <Contexts/> </Error>
Włącz ponownie uwierzytelnianie podstawowe
Jeśli z jakiegoś powodu musisz ponownie włączyć uwierzytelnianie podstawowe, wykonaj te czynności:
- Zaloguj się w dowolnym węźle Edge ZooKeeper.
- Uruchom ten skrypt bash, aby wyłączyć wszystkie zabezpieczenia:
#! /bin/bash /opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOF set /system/securityprofile <SecurityProfile></SecurityProfile> quit EOF
Dane wyjściowe wyświetlą się w formacie:
Connecting to localhost:2181 Welcome to ZooKeeper! JLine support is enabled WATCHER:: WatchedEvent state:SyncConnected type:None path:null [zk: localhost:2181(CONNECTED) 0] set /system/securityprofile <SecurityProfile></SecurityProfile> cZxid = 0x89 ... [zk: localhost:2181(CONNECTED) 1] quit Quitting...
- Włącz ponownie uwierzytelnianie podstawowe i uwierzytelnianie zewnętrznego dostawcy tożsamości:
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>true</BasicAuthEnabled> <PublicKeyEndPoint>/token_key</PublicKeyEndPoint> <ServerUrl>http://35.197.37.220:9099</ServerUrl> </SSOServer> </UserAccessControl> </SecurityProfile>'
Możesz z powrotem korzystać z uwierzytelniania podstawowego. Pamiętaj, że uwierzytelnianie podstawowe nie działa, gdy włączone jest nowe środowisko Edge.