Tornar-se um Fornecedor SSO

Além dos métodos de autenticação fornecidos pelo Crowdin, podes usar o recurso Início de Sessão Único (ISU (SSO)) para autenticar, instantaneamente, os teus utilizadores com os nomes de utilizador existentes.

Este recurso, somente está disponível nos planos de organização.

O ISU (SSO) híbrido do Crowdin é, na verdade, uma maneira mais rápida de criar a conta do tradutor do que o ISU clássico, como OAuth ou SAML.

Todo o processo simplificado, funciona da seguinte maneira:

  1. Ativa o ISU na tua conta e copia a chave API da tua conta.
  2. Cria um URL especial no teu seu que direciona o tradutor ao Crowdin. Este URL conterá as informações de autenticação do tradutor, bem como a chave API que obtiveste anteriormente, como parâmetros de URL encriptados como AES.
  3. O Crowdin usa estes parâmetros para criar uma conta para o tradutor e redireciona para a página desejada. Por exemplo, os tradutores podem ser redirecionados, imediatamente, para o editor de tradução para começar a trabalhar.
  4. O tradutor recebe um email com instruções de como ativar a conta e deve concordar com os Termos de Serviço e Política de Privacidade do Crowdin.

Nota: Antes de encaminhar um utilizador para o Crowdin, inclui um aviso de que estás a enviar as informações pessoais encriptadas do tradutor para a parte externa.

Se passares um nome de início de sessão ou email para o URL do ISU, que já foi usado no Crowdin, o utilizador será solicitado a corrigir os dados de registo.

Ativar o Início de Sessão Único (ISU(SSO))

To enable SSO for your projects, go to the account settings page, click on the API & SSO tab, activate the Enable Single Sign-On option and specify a valid provider’s name.

Parâmetros de URL do ISU

Abaixo, está a lista de parâmetros que podes passar para o Crowdin para registo automático. Neste passo, precisarás de compactar os dados como um array de JSON antes de encriptar (Vê o exemplo de integrações nas linguagens de programação populares, abaixo).

Parâmetro Obrigatório Tipo Padrão Exemplo Notas
user_id sim string 12345678901 Um identificador único para o utilizador (por exemplo, o user_id no teu sistema).
login sim string johndoe Crowdin login name. Should match the pattern [a-z,0-9]
user_email sim string john.doe@mail.com Endereço de email válido
expiração sim int 1406124776 Valid unix timestamp.
Note! Set no more than 30 minutes from the current UTC time.
display_name string John Doe Pseudo ou nome real
distrito string en_US pt_PT Código de localidade
projetos string docx-project,csv-project Uma lista separada por vírgula de identificadores de projeto do Crowdin que o tradutor deve, inicialmente, ter acesso
género int 0 1 | 2 1: masculino, 2: feminino
função int 0 0 | 1 | 2 User role in joined projects. 0: translator, 1: proofreader, 2: manager
idiomas string ro,uk,fr Lista separada por vírgula de códigos de idioma do Crowdin que o utilizador deve ter acesso. Usado para projetos com política moderada de acesso a idiomas
redirect_to string https://pt.crowdin.com/profile https://pt.crowdin.com/project/url-do-teu-projeto O URL do Crowdin onde o tradutor deve pousar após o registo
return_crowdin_login int 0 | 1 Retorna o parâmetro GET crowdin_login (funciona em combinação com o parâmetro redirect_to)

A saída do array de JSON deve se parecer com o seguinte:

{
  "user_id":"12345678901",
  "login":"johndoe",
  "user_email":"john.doe@mail.com",
  "display_name":"John Doe",
  "locale":"de-DE",
  "gender":1,
  "projects":"docx-project,csv-project",
  "expiration":1406124776,
  "role":0,
  "redirect_to":"https:\/\/crowdin.com\/project\/docx-project"
}

Encriptar a Informação

O JSON criado no passo anterior, deve ser encriptado ao usar AES 128-CBC, com os primeiros 16 caracteres da chave API da tua conta do Crowdin, ao atuar como a chave de criptografia, e os últimos 16 caracteres como o vetor de inicialização. O texto encriptado, deve ser transformado agora para texto Base64.

O URL ISU deve usar o seguinte padrão:

https://crowdin.com/join?h={ENCRYPTED_STRING}&uid={CROWDIN_USER_LOGIN}

Onde:

(ENCRYPTED_STRING) é o texto Base64 que criaste no passo anterior.

{CROWDIN_USER_LOGIN} is the login name of your Crowdin account. Note: this must be the same account you used to create the projects you want the translator to have access to.

Exemplos de integração

Criámos os trechos de código para as principais linguagens de programação. Lembra-te de substituir CROWDIN_USER_LOGIN, CROWDIN_USER_API_KEY com as tuas informações de autenticação pessoal.

Este artigo foi útil?