Désactiver l'authentification de base sur Edge

Edge pour Private Cloud v4.18.05

Après avoir activé SAML sur Edge, vous pouvez désactiver l'authentification de base. Cependant, avant de désactivez l'authentification de base:

  • Assurez-vous d'avoir ajouté tous les utilisateurs Edge, y compris les administrateurs système, à votre fournisseur d'identité SAML.
  • Assurez-vous d'avoir testé minutieusement l'authentification SAML sur l'interface utilisateur Edge et la gestion Edge API.
  • Si vous utilisez le portail Apigee Developer Services (ou simplement le portail), configurez et testez SAML sur le portail pour vous assurer que le portail peut se connecter à Edge. Reportez-vous à la section Configuration du d'utiliser SAML pour communiquer avec Edge.

Afficher le profil de sécurité actuel

Vous pouvez afficher le profil de sécurité Edge pour déterminer la configuration actuelle afin de déterminer si L'authentification de base et SAML sont actuellement activés. Utilisez l'appel d'API de gestion Edge suivant sur Edge Serveur de gestion pour afficher le profil de sécurité actuel utilisé par Edge:

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

Si vous n'avez pas encore configuré SAML, la réponse se présente comme suit, ce qui signifie que l'authentification de base est activé:

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

Si vous avez déjà activé SAML, la balise <ssoserver> apparaît dans le sortie:

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

Notez que la version pour laquelle SAML est activé &lt;BasicAuthEnabled&gt;true&lt;/BasicAuthEnabled&gt; signifie que l'authentification de base est toujours activées.

Désactiver l'authentification de base

Utilisez l'appel d'API de gestion Edge suivant sur le serveur de gestion Edge pour désactiver Basic Authentification Notez que vous transmettez en tant que charge utile l'objet XML renvoyé à la section précédente. La seule est que vous définissez &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>'

Après avoir désactivé l'authentification de base, tout appel d'API de gestion Edge qui transmet les identifiants de l'authentification de base renvoie l'erreur suivante:

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

Réactiver l'authentification de base

Si, pour une raison quelconque, vous devez réactiver l'authentification de base, procédez comme suit:

  1. Connectez-vous à n'importe quel nœud Edge ZooKeeper.
  2. Exécutez le script bash suivant pour désactiver toutes les fonctionnalités de sécurité:
    #! /bin/bash
    /opt/apigee/apigee-zookeeper/bin/zkCli.sh -server localhost:2181 <<EOF
    set /system/securityprofile <SecurityProfile></SecurityProfile>
    quit
    EOF

    Le résultat se présente sous la forme suivante:

    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. Réactiver l'authentification de base et l'authentification 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>'

    Vous pouvez à nouveau utiliser l'authentification de base.