Basisauthentifizierung in Edge deaktivieren

Nachdem Sie SAML oder LDAP in Edge aktiviert haben, können Sie die Basisauthentifizierung deaktivieren. Bevor Sie die Basisauthentifizierung deaktivieren , sollten Sie jedoch Folgendes tun:

  • Achten Sie darauf, dass Sie alle Edge-Nutzer, einschließlich Systemadministratoren, Ihrem IDP hinzugefügt haben.
  • Achten Sie darauf, dass Sie die IDP-Authentifizierung in der neuen Edge-UI und der Edge Management API gründlich getestet haben.

Aktuelles Sicherheitsprofil ansehen

Sie können das Edge-Sicherheitsprofil ansehen, um die aktuelle Konfiguration zu ermitteln und festzustellen, ob die Basisauthentifizierung und ein externer IDP derzeit aktiviert sind. Verwenden Sie den folgenden Edge-Management- API-Aufruf auf dem Edge Management Server, um das aktuelle Sicherheitsprofil anzuzeigen, das von Edge verwendet wird:

curl -H "accept:application/xml" http://localhost:8080/v1/securityprofile -u sysAdminEmail:pWord

Wenn Sie noch keinen externen IDP konfiguriert haben, sieht die Antwort wie unten dargestellt aus. Das bedeutet, dass die Basis authentifizierung aktiviert ist:

<SecurityProfile enabled="true" name="securityprofile">
    <UserAccessControl enabled="true">
    </UserAccessControl>
</SecurityProfile>

Wenn Sie bereits einen externen IDP aktiviert haben, sollte das <ssoserver> Element in der Antwort angezeigt werden:

<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>

Beachten Sie, dass in der Version mit aktiviertem externen IDP auch <BasicAuthEnabled>true</BasicAuthEnabled> angezeigt wird. Das bedeutet, dass die Basis authentifizierung weiterhin aktiviert ist.

Basisauthentifizierung deaktivieren

Verwenden Sie den folgenden Edge Management API-Aufruf auf dem Edge Management Server, um die Basis Authentifizierung zu deaktivieren.

Um die Basisauthentifizierung zu deaktivieren, übergeben Sie das im vorherigen Abschnitt zurückgegebene XML-Objekt als Nutzlast. Der einzige Unterschied besteht darin, dass Sie <BasicAuthEnabled> auf false setzen, wie im folgenden Beispiel gezeigt:

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>'

Nachdem Sie die Basisauthentifizierung deaktiviert haben, wird bei jedem Edge Management API-Aufruf, der Authentifizierungsdaten für die Basisauthentifizierung übergibt, der folgende Fehler zurückgegeben:

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

Basisauthentifizierung wieder aktivieren

Wenn Sie die Basisauthentifizierung aus irgendeinem Grund wieder aktivieren müssen, führen Sie die folgenden Schritte aus:

  1. Melden Sie sich bei einem beliebigen Edge ZooKeeper-Knoten an.
  2. Führen Sie das folgende Bash-Skript aus, um alle Sicherheitsfunktionen zu deaktivieren:
    #! /bin/bash
    /opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOF
    set /system/securityprofile <SecurityProfile></SecurityProfile>
    quit
    EOF

    Die Ausgabe sieht so aus:

    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. Aktivieren Sie die Basisauthentifizierung und die Authentifizierung mit dem externen IDP wieder:
    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>'

Sie können die Basisauthentifizierung jetzt wieder verwenden. Wenn Sie in der neuen Edge-UI von SSO wieder zur Basisauthentifizierung wechseln möchten, legen SieAUTH_MODE=basic und MANAGEMENT_UI_SSO_ENABLED=n in der Konfigurationsdatei der neuen Edge-UI fest und führen Sie dann /opt/apigee/apigee-service/bin/apigee-service edge-management-ui configure-sso -f configFile gefolgt von /opt/apigee/apigee-service/bin/apigee-service edge-management-ui restart aus (oder führen Sie /opt/apigee/apigee-setup/bin/setup.sh -p ue -f configFile aus).