Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/ / /
Ruby Driver
/ /

Kerberos (GSSAPI)

O mecanismo de autenticação da API de serviços de segurança genérica (GSSAPI) permite que você use seu nome principal para autenticar em um serviço Kerberos. Você pode usar esse mecanismo somente ao autenticar para Enterprise Advanced.

Os exemplos de código nesta página usam os seguintes espaços reservados:

  • <username>: LDAP username.

  • <hostname>: Endereço de rede da deployment do MongoDB .

  • <port>: número da porta da sua implantação do MongoDB . Se você omitir este parâmetro, o driver utilizará o número de porta padrão (27017). Especificar um número de porta é opcional ao se conectar a um cluster MongoDB Atlas .

  • <authentication_db>: banco de dados MongoDB que contém as credenciais LDAP do usuário. Se você omitir este parâmetro, o driver utilizará o banco de dados padrão (admin).

Para usar os exemplos de código nesta página, substitua esses espaços reservados por seus próprios valores.

Para configurar o MongoDB Server para usar o Kerberos, consulte a documentação do MongoDB Server Kerberos.

Para usar o mecanismo de autenticação Kerberos com o driver Ruby, você deve instalar e carregar a biblioteca mongo_kerberos. Para fazer isso, adicione as seguintes linhas ao seu Gemfile:

gem 'mongo', '~> 2'
gem 'mongo_kerberos', '~> 2'

Em seguida, adicione as seguintes linhas ao código do seu aplicação :

require 'mongo'
require 'mongo_kerberos'

Observação

Ao usar a autenticação Kerberos, você deve especificar o nome de domínio totalmente qualificado (FQDN) do host.

As seções a seguir descrevem como usar a autenticação Kerberos com Ruby MRI e JRuby.

Se você estiver usando a autenticação Kerberos com Ruby MRI, deverá executar as seguintes etapas:

  • Estabeleça uma sessão Kerberos no driver. O driver utiliza esta sessão para provar a identidade do usuário para o servidor.

  • Você deve garantir que o sistema host esteja configurado para autenticação Kerberos. Para saber mais sobre como configurar o sistema de host para usar o Kerberos, consulte a documentação do Kerberos ou a documentação do seu sistema operacional para obter detalhes.

Use o utilitário kinit para estabelecer uma sessão Kerberos.

Se você estiver usando a autenticação Kerberos com JRuby, poderá estabelecer externamente a sessão Kerberos no driver usando o processo descrito acima para MRI. Você também pode fornecer o caminho para um arquivo keytab armazenando a configuração na propriedade do sistema java.security.auth.login.config. Você também deve configurar o Java Runtime Environment para usar Kerberos. Para saber mais, consulte a documentação Kerberos do driver Java do MongoDB para obter mais informações.

Selecione a aba Connection String ou Client Options para ver a sintaxe correspondente para conectar ao MongoDB com autenticação Kerberos:

client = Mongo::Client.new("mongodb://<username>@<hostname>[:<port>]/<authentication_db>?authMechanism=GSSAPI")
client = Mongo::Client.new(['<hostname>[:<port>]'],
auth_mech: :gssapi,
user: '<username>')

Observação

Se você usar uma string de conexão para se conectar ao MongoDB, certifique-se de codificar por cento quaisquer caracteres especiais que apareçam no nome de usuário.

Para saber mais sobre qualquer um dos métodos ou tipos discutidos nesta página, consulte a seguinte documentação da API:

Voltar

LDAP (simples)

Nesta página