Inhabilita la autenticación básica en Edge

Edge for Private Cloud v4.18.05

Después de habilitar SAML en Edge, puedes inhabilitar la autenticación básica. Sin embargo, antes de que inhabilitar la autenticación básica:

  • Asegúrate de haber agregado a todos los usuarios de Edge, incluidos los administradores del sistema, a tu IdP de SAML.
  • Asegúrate de haber probado minuciosamente la autenticación de SAML en la IU y la administración de Edge en la API de Cloud.
  • Si usas el portal de servicios para desarrolladores de Apigee (o simplemente el portal), configura y prueba SAML en el portal para garantizar que el portal pueda conectarse a Edge. Consulta Cómo configurar el para usar SAML y comunicarse con Edge.

Cómo ver el perfil de seguridad actual

Puedes ver el perfil de seguridad de Edge para determinar la configuración actual y determinar si La autenticación básica y SAML están habilitadas en este momento. Usa la siguiente llamada a la API de Edge Management en Edge Management Server para ver el perfil de seguridad actual que usa Edge:

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

Si aún no configuraste SAML, la respuesta es la que se muestra a continuación, es decir, la autenticación básica es habilitado:

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

Si ya habilitaste SAML, verás la etiqueta <ssoserver> en la Resultado:

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

Observa que la versión con SAML habilitado también muestra &lt;BasicAuthEnabled&gt;true&lt;/BasicAuthEnabled&gt; significa que la autenticación básica es sigue habilitado.

Inhabilitar la autenticación básica

Usa la siguiente llamada a la API de Edge Management en el servidor de administración perimetral para inhabilitar la versión Básica Autenticación. Ten en cuenta que pasas como carga útil el objeto XML que se mostró en la sección anterior. El único la diferencia es que estableces &lt;BasicAuthEnabled&gt;false&lt;/BasicAuthEnabled&gt;:

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

Después de inhabilitar la autenticación básica, cualquier llamada a la API de administración perimetral que pase las credenciales de autenticación básica devuelve el siguiente error:

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

Volver a habilitar la autenticación básica

Si por algún motivo tienes que volver a habilitar la autenticación básica, debes realizar los siguientes pasos:

  1. Accede a cualquier nodo de ZooKeeper de Edge.
  2. Ejecuta la siguiente secuencia de comandos Bash para desactivar toda la seguridad:
    #! /bin/bash
    /opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOF
    set /system/securityprofile <SecurityProfile></SecurityProfile>
    quit
    EOF

    Verás un resultado en el siguiente formato:

    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. Vuelve a habilitar la autenticación básica y la autenticación 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>'

    Ya puedes volver a usar la autenticación básica.