Menu Docs
Página inicial do Docs
/
BI Connector
/

Configurar Kerberos no BI Connector

Nesta página

  • Configuração do Active Directory
  • Configuração do MongoDB
  • Configuração do BI Connector
  • Configuração do MongoDB
  • Configuração do BI Connector

Novidades na versão 2.5.

O MongoDB Connector para BI suporta a autenticação Kerberos para conectar ferramentas de BI e para o usuário administrador do BI Connector autenticar com MongoDB.

A seção a seguir orienta você na configuração do BI Connector para usar Kerberos com dois dos casos de uso mais comuns:

  • Máquinas de clientes Windows/Linux autenticadas no Active Directory

  • máquina do cliente macOS autenticando no Linux KDC

Se você tiver outro caso de uso, entre em contato como Suporte do MongoDB para obter ajuda.

Importante

A parte do domínio de qualquer nome de usuário deve ser escrita em letras maiúsculas. Essa parte do nome de usuário corresponde a um Realm Kerberos ou a um domínio do Active Directory. É sensível a maiúsculas e minúsculas.

Exemplo

Supondo esta configuração:

  • Seu nome é Grace Smith.

  • Seu domínio do Windows é denominado EXAMPLE.COM.

  • Você está executando sua ferramenta de BI em um host Windows chamado BI.EXAMPLE.COM.

No Active Directory, você cria três usuários:

  • Para MongoDB: mongodb@EXAMPLE.COM

  • Para connector BI: mongosql@EXAMPLE.COM

  • Para você: grace.smith@EXAMPLE.COM

Crie um SPN para cada serviço:

setspn.exe -S mongodb/BI.EXAMPLE.COM mongodb
setspn.exe -S mongosql/BI.EXAMPLE.COM mongosql

Observação

Os nomes podem ser qualquer coisa que você escolher, desde que você os use consistentemente ao longo desta configuração.

Abra o Centro Administrativo do Active Directory e clique duas vezes no usuário do serviço MongoDB (mongodb).

Defina o mongosql usuário como delegado para o mongodb usuário do BI.EXAMPLE.COM host .

Observação

Usuário do esquema Linux autenticando no ADC

Se você estiver autenticando um usuário a partir de um host Linux e o usuário do esquema estiver usando um arquivo keytab em vez de uma senha, será necessário o seguinte, além de criar o usuário no MongoDB:

  • Criando um UPN para o usuário do esquema.

  • Definindo o KRB5_CLIENT_KTNAME variável de ambiente para o keytab deste usuário.

    Esse KRB5_CLIENT_KTNAME deve incluir a chave para o usuário do esquema e o usuário do serviço do BI Connector.

  • Instale o MongoDB Enterprise e inicie-o como um serviço.

  • Defina as seguintes opções no arquivo de configuração:

    net:
    bindIp: <fullHostnameOfBIConnector>
    setParameter:
    authenticationMechanisms: "GSSAPI"

    Para obter mais informações, consulte net.bindIp, setParameter e authenticationMechanisms.

  • Execute mongod como o usuário MongoDB do Windows que você criou no Active Directory.

  • Crie um usuário em seu banco de dados MongoDB com osroles apropriados do para obter amostras de dados.

Exemplo

  • Seu nome é Grace Smith.

  • Seu domínio do Windows é denominado EXAMPLE.COM.

  • Você está executando sua ferramenta de BI em um host Windows chamado BI.EXAMPLE.COM.

Em BI.EXAMPLE.COM:

  • Instale o MongoDB e o MongoDB connector for BI como serviços.

  • Edite seu arquivo mongod.cfg para se parecer com:

    systemLog:
    destination: "file"
    path: "c:\\data\\log\\mongod.log"
    verbosity: 2
    storage:
    dbPath: "c:\\data\\db"
    net:
    bindIp: BI.EXAMPLE.COM
    setParameter:
    authenticationMechanisms: "GSSAPI"
  • Faça login no shell mongo e crie seu usuário do BI Connector .

    db.getSiblingDB("$external").createUser(
    {
    user: "grace.smith@EXAMPLE.COM",
    roles: [ { role: "readAnyDatabase", db: "admin" } ]
    }
    )
  • Edite seu arquivo mongosqld.cfg para se parecer com:

    systemLog:
    path: "c:\\data\\log\\mongosqld.log"
    logAppend: true
    logRotate: "reopen"
    verbosity: 3
    runtime:
    memory:
    maxPerStage: 102400
    net:
    bindIp: BI.EXAMPLE.COM
    port: 3306
    security:
    enabled: true
    defaultSource: "$external"
    defaultMechanism: "GSSAPI"
    gssapi:
    hostname: "BI.EXAMPLE.COM"
    serviceName: "mongosql"
    mongodb:
    net:
    uri: "mongodb://BI.EXAMPLE.COM/"
    auth:
    username: "grace.smith@EXAMPLE.COM"
    password: "abc123!"
    source: "$external"
    mechanism: "GSSAPI"
    processManagement:
    service:
    displayName: "MongoDB BI Connector"
  • Abra Services.

  • Definir MongoDB como Log on as: This account: mongodb@EXAMPLE.COM

  • Definir o conector MongoDB para BI como Log on as: This account: mongosql@EXAMPLE.COM

  • Inicie o MongoDB e o connector MongoDB para serviços de BI.

Observação

Usuário do esquema Linux autenticando no ADC

Se você estiver autenticando um usuário a partir de um host Linux e o usuário do esquema for usar um nome de usuário e uma senha, o seguinte será necessário:

Dica

Veja também:

Para saber como configurar o Active Directory para gerenciar sua instância do MongoDB, consulte Configurar o MongoDB com autenticação Kerberos e autorização do Active Directory.

  • Certifique-se de que suas instâncias do mongod e mongos estejam executando o MongoDB Enterprise.

  • Configure suas instâncias mongod e mongos para usar a autenticação Kerberos (GSSAPI).

  • Verifique se você define as seguintes opções no arquivo de configuração do MongoDB:

    net:
    bindIp: <fullHostnameOfBIConnector>
    setParameter:
    authenticationMechanisms: "GSSAPI"
  • Criar um arquivo keytab no KDC que tem as entidades de serviço Kerberos necessárias para mongosql e mongosql2.

    Exemplo

    mongosql/<fullHostnameOfBIConnector>@<KERBEROS_REALM>

Dica

Testando o BI Connector com Kerberos no localhost

Se você estiver testando o Kerberos com um mongosqld em execução em localhost, será necessário definir net.unixDomainSocket.enabled como true no arquivo de configuração mongosqld .