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 :
- Casdoor peut être connecté et utilisé avec succès.
- 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 :
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'.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';Modifiez
/module/commom/model.php
.Ajoutez 'oidc' à la liste d'accès anonyme et ajoutez une ligne à la méthode
isOpenMethod
demodel.php
.public function isOpenMethod($module, $method)
{
if ($module == 'oidc' and $method == 'index') {
return true;
}
}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")));Modifiez la méthode
setSuperVars()
à l'intérieur deframework/base/router.class.php
et commentez les déclarations suivantes.public function setSuperVars()
// unset($_REQUEST);
Étape 3 : Configurer l'application Casdoor
- Créez une nouvelle application Casdoor ou utilisez-en une existante.
- Ajoutez votre URL de redirection.
- 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");
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框架"