Ir para o conteúdo

Configurar a injeção de SSO nas aplicações web com a ferramenta CyberElements SSO Configurator

Atualmente, a configuração do SSO (Single Sign-On) nas aplicações web enfrenta uma diversidade e uma complexidade crescentes dos formulários de início de sessão, o que obriga a definir a configuração manualmente ao criar a aplicação web na consola.

Para superar esta limitação, a nossa equipa desenvolveu uma extensão CyberElements SSO Configurator que permite recuperar facilmente a configuração a partir da página de início de sessão.

type:youtube

Instalar a extensão

A extensão CyberElements SSO Configurator é compatível com os navegadores baseados em Chromium (Google Chrome, Opera GX, Microsoft Edge, etc.) e com o Firefox.

  • Transfira o ficheiro .zip a partir da Toolbox da consola de administração e descompacte-o.

  • Vá ao módulo de gestão das extensões.
  • Clique no botão «Load unpacked extension».

Informação

Se o botão «Load unpacked extension» não estiver visível, verifique se o modo de desenvolvedor está ativado.

  • Selecione a pasta descompactada.

  • Clique no botão «Add» da janela emergente que aparece no navegador.

  • A extensão é adicionada ao seu navegador.

  • Transfira o ficheiro .xpi a partir da Toolbox da consola de administração.

  • Abra este ficheiro fazendo duplo clique no ficheiro transferido.
  • Abre-se uma janela do Firefox e aparece uma janela emergente a perguntar se deseja adicionar a extensão. Clique no botão «Add».
  • A extensão é adicionada ao seu navegador.

Recuperar a configuração do SSO web com o CyberElements SSO Configurator

Formulário de início de sessão simples

Informação

Nesta secção, utilizamos como exemplo a configuração de SSO para o site MySystancia.

Comece por ir ao formulário de início de sessão da sua aplicação web.

Inicie depois a extensão clicando no botão type:inline.

A extensão abre-se num painel do lado esquerdo do seu navegador.

A extensão identifica automaticamente os campos correspondentes ao nome de utilizador, à palavra-passe e ao botão «Log in», e realça os campos correspondentes.

Verifique se os campos detetados estão corretos e clique no botão type:inline para guardar a configuração na área de transferência.

Formulário de início de sessão em várias páginas

Informação

Nesta secção, utilizamos como exemplo a configuração de SSO para a aplicação Microsoft Outlook.

Os formulários de início de sessão das aplicações web da Microsoft são mais complexos e estão distribuídos por várias páginas. Será necessário, portanto, adaptar a configuração detetada pela extensão CyberElements SSO Configurator.

Comece por ir ao formulário de início de sessão da sua aplicação web.

Inicie depois a extensão clicando no botão type:inline.

A extensão abre-se num painel do lado esquerdo do seu navegador.

A extensão identifica automaticamente os campos correspondentes ao nome de utilizador, à palavra-passe e ao botão «Log in», e realça os campos correspondentes.

No nosso exemplo, apenas o campo do identificador está presente na primeira página.

Note que o botão «Log in» não foi detetado corretamente e aponta para a ligação de criação de conta. Clique no ícone type:inline da ação button e selecione o botão «Next».

Como a configuração funciona segundo o mesmo princípio de um script, é necessário deslocar em seguida a ação criada para antes do campo da palavra-passe. Arraste e largue o campo adicionado para o colocar na segunda posição.

Introduza depois um endereço de correio eletrónico e clique no botão «Next» para passar à página seguinte e aceder ao campo da palavra-passe.

Clique no botão type:inline da ação password e selecione o campo da palavra-passe.

Adicione depois uma ação com o botão type:inline, clique no botão type:inline da ação adicionada e selecione o botão «Connect».

Clique no botão type:inline para guardar a configuração na área de transferência.

Formulário de início de sessão com campos aleatórios

Informação

Nesta secção, utilizamos como exemplo a configuração de SSO para uma aplicação baseada em GLPI.

Em função da aplicação web, é possível que os identificadores dos campos do formulário de início de sessão sejam gerados aleatoriamente e que, por isso, já não correspondam num novo início de sessão.

Para saber se a sua aplicação gera aleatoriamente os identificadores de certos campos, recupere uma primeira vez a configuração do formulário de início de sessão e cole-a num ficheiro de texto.

Volte depois a carregar a página de início de sessão e recupere novamente a configuração do formulário. Cole-a noutro ficheiro de texto.

Compare em seguida as duas configurações:

Configuração 1 Configuração 2
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
  "https://glpi.domain.local/index.php": {
    "login": {
      "id": "login_name",
      "name": "fielda67a46f7296fa6",
      "type": "text",
      "value": "",
      "order": 1,
      "objectType": "input",
      "tag": "input"
    },
    "password": {
      "id": "login_password",
      "name": "fieldb67a46f7296fa9",
      "type": "password",
      "value": "",
      "order": 2,
      "objectType": "input",
      "tag": "input"
    },
    "button": {
      "id": "",
      "name": "submit",
      "type": "submit",
      "value": "",
      "order": 3,
      "objectType": "button",
      "tag": "button"
    }
  }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
  "https://glpi.domain.local/index.php": {
    "login": {
      "id": "login_name",
      "name": "fieldb78b57f83a70b7",
      "type": "text",
      "value": "",
      "order": 1,
      "objectType": "input",
      "tag": "input"
    },
    "password": {
      "id": "login_password",
      "name": "fieldc79b57083a70ba",
      "type": "password",
      "value": "",
      "order": 2,
      "objectType": "input",
      "tag": "input"
    },
    "button": {
      "id": "",
      "name": "submit",
      "type": "submit",
      "value": "",
      "order": 3,
      "objectType": "button",
      "tag": "button"
    }
  }
}

Note que os elementos login e password têm nomes diferentes, o que significa que se trata de campos gerados aleatoriamente. Para que a configuração funcione, altere-a manualmente e elimine a etiqueta dos campos aleatórios:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
    "https://glpi.domain.local/index.php": {
        "login": {
            "id": "login_name",
            "name": "",
            "type": "text",
            "value": "",
            "order": 1,
            "objectType": "input",
            "tag": "input"
        },
        "password": {
            "id": "login_password",
            "name": "",
            "type": "password",
            "value": "",
            "order": 2,
            "objectType": "input",
            "tag": "input"
        },
        "button": {
            "id": "",
            "name": "submit",
            "type": "submit",
            "value": "",
            "order": 3,
            "objectType": "button",
            "tag": "button"
        }
    }
}

Criar a aplicação em CyberElements

Ao criar a aplicação web na consola CyberElements, ative o SSO na aplicação selecionando a opção «Enabled», «Request» ou «Fixed» no menu suspenso.

Selecione depois a caixa «SSO on classic HTML forms».

Por último, selecione o tipo de SSO «Injection» e cole no campo «Injection settings» a configuração recuperada na secção anterior.

O SSO fica configurado na sua aplicação.