Pular para o conteúdo principal

Zentao

Zentao is an agile project management tool. It does not support OIDC natively; use the zentao-oidc module to integrate Casdoor SSO.

Etapa 1: Implementar Casdoor e Zentao

Deploy Casdoor and Zentao. Ensure both are running and you can sign in to each.

Etapa 2: Integrar o módulo OIDC de terceiros do Zentao

Instale zentao-oidc executando o seguinte comando:

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

Alternatively, download the ZIP and unzip it.

Este módulo é usado para integrar o Zentao com SSO para OpenId. Eis como usá-lo:

  1. Copie o diretório inteiro oidc para o módulo do Zentao e use-o como um módulo do Zentao. Renomeie o pacote baixado para 'oidc'.

  2. Configure o filtro.

    Since the Zentao framework filters the parameters in the URL and does not allow spaces, add the following at the end of /config/my.php.

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

    Adicione 'oidc' à lista de acesso anônimo e adicione uma linha ao método isOpenMethod de model.php.

    public function isOpenMethod($module, $method)
    {
    if ($module == 'oidc' and $method == 'index') {
    return true;
    }
    }
  4. Se você não quer que a tela de login do Zentao apareça, vá diretamente para a tela de login do Casdoor.

    Modifique a última linha de código em public function checkPriv() em /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. Modifique o método setSuperVars() dentro de framework/base/router.class.php e comente as seguintes declarações.

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

Etapa 3: Configurar Aplicativo Casdoor

  1. Crie um novo aplicativo Casdoor ou use um existente.
  2. Adicione sua URL de redirecionamento.Configuração do Aplicativo Casdoor
  3. Adicione o provedor que você deseja e preencha outras configurações necessárias.

Etapa 4: Configurar Zentao

Configure o arquivo config.php no diretório oidc.

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

Defina sua URL de redirecionamento em module/oidc no método public function index().

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

A URL aqui se refere a chamar o método 'index' no módulo 'oidc'. Você também precisa definir um separador de variáveis. Por padrão, o framework usa um traço ('-'). See the official Zentao framework docs for more details. "zentaoPHP框架"