Désactiver l'authentification de base sur Edge

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

  • Assurez-vous d'avoir ajouté tous les utilisateurs Edge, y compris les administrateurs système, à votre IDP :
  • Assurez-vous d'avoir testé minutieusement l'authentification de votre fournisseur d'identité sur l'interface utilisateur Edge et Edge l'API de gestion de projet.
  • Si vous utilisez le portail Apigee Developer Services (ou simplement le portail), configurez et testez votre IdP externe sur le portail. pour vous assurer que le portail peut se connecter à Edge. Voir Configurer le portail pour les fournisseurs d'identité externes

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 un IdP externe sont actuellement activés. Utilisez la gestion Edge suivante Appel d'API sur le serveur de gestion Edge 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é d'IdP externe, la réponse se présente comme ci-dessous, c'est-à-dire l'authentification est activée:

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

Si vous avez déjà activé un fournisseur d'identité externe, l'élément <ssoserver> doit apparaissent dans la réponse:

<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 un IdP externe est activé affiche également &lt;BasicAuthEnabled&gt;true&lt;/BasicAuthEnabled&gt;, ce qui signifie que le type l'authentification est toujours activée.

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 l'authentification unique. Vous transmettez l'objet XML renvoyé à la section précédente en tant que charge utile. La seule différence est que vous définissez <BasicAuthEnabled> sur false, l'exemple suivant montre:

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 la désactivation de l'authentification Basic, tout appel d'API de gestion Edge qui transmet l'authentification Basic Les identifiants d'authentification renvoient 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 Basic, vous devez effectuer les opérations suivantes étapes:

  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éactivez l'authentification de base et l'authentification du fournisseur d'identité externe:
    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. Notez que l'authentification de base ne fonctionne pas lorsque l'expérience New Edge est activée.