Tornando-se um provedor de SSO

Além dos métodos de autenticação fornecidos pela Crowdin, você pode usar o recurso Logon Único (SSO) para autenticar instantaneamente seus usuários com seus nomes de usuário existentes.

Esse recurso está disponível apenas nos planos de organização.

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

Todo o processo simplificado funciona da seguinte maneira:

  1. Ative o SSO na sua conta e copie a chave API da sua conta.
  2. Criar uma URL especial no seu sistema que direciona o tradutor para Crowdin. Esta URL conterá as informações de autenticação do tradutor, bem como a chave da API que você obteve anteriormente, como parâmetros de URL criptografados com o AES.
  3. O Crowdin usa esses 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 sobre como ativar a conta e deve concordar com os Termos de Serviço e a Política de Privacidade da Crowdin.
Note: Before referring a user to Crowdin, please include a warning that you are sending the translator’s encrypted personal information to the outside party.

If you pass a login name or email to the SSO URL that is already taken at Crowdin, the user will be asked to correct the registration data.

Ativando o logon único (SSO)

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

Parâmetros de URL SSO

Below is the list of parameters you can pass to Crowdin for automatic registration. In this step, you will need to pack the data as JSON array before encryption (See the sample integrations in popular programming languages below).

Parâmetro Obrigatório Tipo Padrão Exemplo Notas
user_id sim int 12345678901 Um identificador exclusivo para o usuário (por exemplo, o user_id no seu sistema).
iniciar sessão sim string johndoe Nome de login do Crowdin. Deve corresponder ao padrão [a-z, 0-9]
user_email sim string john.doe@mail.com Endereço de e-mail válido
expiração sim int 1406124776 timestamp do unix válido.
Nota! Defina não mais de 30 minutos a partir da hora atual do UTC.
display_name string John Doe Pseudo ou nome real
região string en_US de_DE Código de região
projetos string docx-project,csv-project Uma lista separada por vírgula de identificadores de projeto Crowdin que o tradutor deve inicialmente ter acesso
sexo int 0 1 | 2 1: masculino, 2: feminino
função int 0 0 | 1 | 2 Função do usuário em projetos associados. 0: tradutor, 1: revisor, 2: gerente
línguas string ro,uk,fr Lista separada por vírgula de códigos de idioma Crowdin que o usuário deve ter acesso. Usado para projetos com política moderada de acesso a idiomas
redirect_to string https://crowdin.com/profile https://crowdin.com/project/your-project-url A URL do Crowdin onde o tradutor deve ater após o registro
return_crowdin_login int 0 | 1 Retornar parâmetro GET crowdin_login (funciona em combinação com o parâmetro redirect_to)

The output JSON array should look like the following:

{
  "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"
}

Criptografando as Informações

The JSON created in the previous step must be encrypted using AES 128-CBC, with the first 16 characters of your Crowdin account API key acting as the cipher key, and the last 16 characters as the initialization vector. The encrypted text should be transformed now to Base64 text.

The SSO URL should use the following pattern:

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

Where:

{ENCRYPTED_STRING} is the Base64 text you created in the previous step.

{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.

Exemplo de integrações

We’ve created the code snippets for the most major programming languages. Remember to replace CROWDIN_USER_LOGIN, CROWDIN_USER_API_KEY with your personal authentication information.

Este artigo foi útil?