Wyłącz uwierzytelnianie podstawowe na brzegu sieci

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.

Aby wyłączyć uwierzytelnianie podstawowe, przekaż jako ładunek obiekt XML zwrócony w poprzedniej sekcji. 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:

  1. Zaloguj się w dowolnym węźle Edge ZooKeeper.
  2. 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...
  3. 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.