Wyłącz uwierzytelnianie podstawowe na brzegu sieci

Po włączeniu SAML lub LDAP w Edge możesz wyłączyć uwierzytelnianie podstawowe. Jednak zanim wyłączysz uwierzytelnianie podstawowe:

  • Upewnij się, że wszyscy użytkownicy Edge, w tym administratorzy systemu, zostali dodani do IDP.
  • Upewnij się, że uwierzytelnianie dostawcy tożsamości zostało dokładnie przetestowane w interfejsie Edge i interfejsie API zarządzania Edge.
  • Jeśli używasz portalu usług dla programistów Apigee (lub po prostu portalu), skonfiguruj i przetestuj zewnętrznego dostawcę tożsamości w portalu, aby upewnić się, że portal może połączyć się z Edge. Zobacz Konfigurowanie portalu dla zewnętrznych dostawców tożsamości.

Wyświetlanie bieżącego profilu zabezpieczeń

Możesz wyświetlić profil zabezpieczeń Edge, aby sprawdzić bieżącą konfigurację i ustalić, 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 API zarządzania Edge na serwerze zarządzania Edge:

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ź będzie wyglądać tak, 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łączonego zewnętrznego dostawcę 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>

Zauważ, że wersja z włączonym zewnętrznym dostawcą tożsamości zawiera też element <BasicAuthEnabled>true</BasicAuthEnabled>, co oznacza, że uwierzytelnianie podstawowe jest nadal włączone.

Wyłączanie uwierzytelniania podstawowego

Aby wyłączyć uwierzytelnianie podstawowe, użyj na serwerze zarządzania Edge tego wywołania interfejsu Edge Management API.

Aby wyłączyć uwierzytelnianie podstawowe, przekaż obiekt XML zwrócony w poprzedniej sekcji jako ładunek. Jedyną różnicą jest to, że ustawiasz <BasicAuthEnabled> na false, jak 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 dane uwierzytelniania podstawowego, zwraca ten błąd:

<Error>
    <Code>security.SecurityProfileBasicAuthDisabled</Code>
    <Message>Basic Authentication scheme not allowed</Message>
    <Contexts/>
</Error>

Ponowne włączanie uwierzytelniania podstawowego

Jeśli z jakiegoś powodu musisz ponownie włączyć uwierzytelnianie podstawowe, wykonaj te czynności:

  1. Zaloguj się w dowolnym węźle ZooKeeper Edge.
  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 będą miały taką postać:

    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. Ponownie włącz uwierzytelnianie podstawowe i uwierzytelnianie za pomocą 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 teraz ponownie używać uwierzytelniania podstawowego. Pamiętaj, że uwierzytelnianie podstawowe nie działa, gdy włączone jest nowe środowisko Edge.