Wyłączanie podstawowego uwierzytelniania na urządzeniu Edge

Edge dla chmury prywatnej w wersji 4.18.05

Po włączeniu SAML 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 dostawcy tożsamości SAML.
  • Upewnij się, że uwierzytelnianie SAML 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 SAML w portalu, aby upewnić się, że portal może połączyć się z Edge. Zobacz Konfigurowanie portalu do używania SAML do komunikacji z Edge.

Wyświetlanie bieżącego profilu zabezpieczeń

Możesz wyświetlić profil zabezpieczeń Edge, aby sprawdzić bieżącą konfigurację i ustalić, czy uwierzytelnianie podstawowe i SAML są obecnie włączone. Aby wyświetlić bieżący profil zabezpieczeń używany przez Edge, użyj tego wywołania interfejsu API zarządzania Google Analytics 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 protokołu SAML, 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łączony protokół SAML, w danych wyjściowych zobaczysz tag <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 SAML zawiera też <BasicAuthEnabled>true</BasicAuthEnabled>, co oznacza, że uwierzytelnianie podstawowe jest nadal włączone.

Wyłącz uwierzytelnianie podstawowe

Aby wyłączyć uwierzytelnianie podstawowe, użyj na serwerze zarządzania Edge tego wywołania interfejsu API zarządzania Edge. Zwróć uwagę, że jako ładunek przekazujesz obiekt XML zwrócony w poprzedniej sekcji. Jedyna różnica polega na tym, że ustawiasz <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>'

Po wyłączeniu uwierzytelniania podstawowego każde wywołanie interfejsu API zarządzania Edge, które przekazuje dane uwierzytelniające 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 SAML:
    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 już ponownie korzystać z uwierzytelniania podstawowego.