Passer au contenu principal

Zentao

Zentao est un système/outil de gestion de projet agile (scrum), mais il ne prend pas en charge OIDC lui-même. Pour intégrer Zentao avec Casdoor SSO, nous devons utiliser un module OIDC tiers appelé zentao-oidc, et ce document vous montrera comment faire.

Étape 1 : Déployer Casdoor et Zentao

Tout d'abord, déployez Casdoor et Zentao. Après un déploiement réussi, assurez-vous que :

  1. Casdoor peut être connecté et utilisé avec succès.
  2. Vous pouvez vous connecter et utiliser Zentao avec succès.

Étape 2 : Intégrer le module tiers OIDC de Zentao

Installez zentao-oidc en exécutant la commande suivante :

git clone https://github.com/casdoor/zentao-oidc.git

Alternativement, vous pouvez télécharger le ZIP et le décompresser.

Ce module est utilisé pour intégrer Zentao avec SSO pour OpenId. Voici comment l'utiliser :

  1. Copiez l'intégralité du répertoire oidc dans le module de Zentao et utilisez-le comme un module de Zentao. Renommez le paquet téléchargé en 'oidc'.

  2. Configurez le filtre.

    Comme le framework Zentao filtre les paramètres dans l'URL et ne permet pas les espaces, vous devez mettre le code suivant à la fin de /config/my.php.

    $filter->oidc = new stdclass();
    $filter->oidc->index = new stdclass();
    $filter->oidc->index->paramValue['scope'] = 'reg::any';
  3. Modifiez /module/commom/model.php.

    Ajoutez 'oidc' à la liste d'accès anonyme et ajoutez une ligne à la méthode isOpenMethod de model.php.

    public function isOpenMethod($module, $method)
    {
    if ($module == 'oidc' and $method == 'index') {
    return true;
    }
    }
  4. Si vous ne voulez pas que l'écran de connexion de Zentao apparaisse, allez directement à l'écran de connexion de Casdoor.

    Modifiez la dernière ligne de code dans public function checkPriv() dans /module/common/model.php.

    //return print(js::locate(helper::createLink('user', 'login', "referer=$referer")));
    return print(js::locate(helper::createLink('oidc', 'index', "referer=$referer")));
  5. Modifiez la méthode setSuperVars() à l'intérieur de framework/base/router.class.php et commentez les déclarations suivantes.

    public function setSuperVars()
    // unset($_REQUEST);

Étape 3 : Configurer l'application Casdoor

  1. Créez une nouvelle application Casdoor ou utilisez-en une existante.
  2. Ajoutez votre URL de redirection.Paramétrage de l'application Casdoor
  3. Ajoutez le fournisseur que vous souhaitez et remplissez les autres paramètres requis.

Étape 4 : Configurer Zentao

Configurez le fichier config.php dans le répertoire oidc.

$config->oidc->clientId = "<Your ClientId>";
$config->oidc->clientSecret = "<Your ClientSecret>";
$config->oidc->issuer = "http://localhost:8000";

Définissez votre URL de redirection dans module/oidc dans la méthode public function index().

$oidc->setRedirectURL($path."/zentao/oidc-index.html");
note

L'URL ici fait référence à l'appel de la méthode 'index' dans le module 'oidc'. Vous devez également définir un séparateur de variables. Par défaut, le framework utilise un tiret ("-"). Veuillez vous référer au framework officiel de Zentao pour plus de détails. "zentaoPHP框架"