Configurar políticas do Apache Hive no HDInsight com o Enterprise Security Package
Neste artigo, você aprenderá a configurar as políticas do Apache Ranger para Apache Hive. Você cria duas políticas do Ranger para restringir o acesso ao hivesampletable
. O hivesampletable
vem com clusters do HDInsight. Depois de configurar as políticas, use o Excel e o driver Open Database Connectivity (ODBC) para se conectar às tabelas do Hive no HDInsight.
Pré-requisitos
- Um cluster do HDInsight com Enterprise Security Package (ESP). Para obter mais informações, confira Configurar os clusters do HDInsight com ESP.
- Uma estação de trabalho com aplicativos Microsoft 365 para empresas, Office 2016, Office 2013 Professional Plus, Excel 2013 Standalone ou Office 2010 Professional Plus.
Conectar-se à interface do usuário do Administrador do Apache Ranger
Para se conectar à interface do usuário do Administrador do Ranger:
Em um navegador, vá para a interface do usuário do Administrador do Ranger em
https://CLUSTERNAME.azurehdinsight.net/Ranger/
ondeCLUSTERNAME
está o nome do seu cluster.Observação
O Ranger usa credenciais diferentes das utilizadas pelo cluster Apache Hadoop. Para impedir que os navegadores usem credenciais do Hadoop em cache, use uma nova janela do navegador InPrivate para se conectar à interface do usuário do Administrador do Ranger.
Entre usando o nome de usuário e a senha do domínio do administrador do cluster:
Atualmente, o Ranger só funciona com o Hive e o Yarn.
Crie usuários de domínio
Para obter informações sobre como criar hiveruser1
e hiveuser2
, confira Criar um cluster do HDInsight com ESP. Você usará as duas contas de usuário neste artigo.
Criar políticas do Ranger
Nesta seção, você criará duas políticas do Ranger para acessar hivesampletable
. Você concede permissão de seleção em diferentes conjuntos de colunas. Ambos os usuários foram criados usando Criar um cluster do HDInsight com ESP. Na próxima seção, você testará as duas políticas no Excel.
Para criar as políticas do Ranger:
Abra o interface do usuário administrador do Ranger. Confira a seção anterior, Conectar-se à interface do usuário do Administrador do Apache Ranger.
Em Hive, selecione CLUSTERNAME_Hive. Você verá duas políticas pré-configuradas.
Selecione Adicionar nova política e, em seguida, insira os seguintes valores:
Propriedade Valor Nome da política read-hivesampletable-all Banco de Dados do Hive padrão table hivesampletable Coluna Hive * Selecionar usuário hiveuser1 Permissões select .
Observação
Se um usuário de domínio não for preenchido em Selecionar Usuário, aguarde alguns instantes para que o Ranger sincronize com o Microsoft Entra ID.
Selecione Adicionar para salvar a política.
Repita as duas últimas etapas para criar outra política com as seguintes propriedades:
Propriedade Valor Nome da política read-hivesampletable-devicemake Banco de Dados do Hive padrão table hivesampletable Coluna de Hive clientid, devicemake Selecionar usuário hiveuser2 Permissões select
Criar uma fonte de dados ODBC do Hive
Para obter instruções sobre como criar uma fonte de dados ODBC do Hive, confira Criar uma fonte de dados ODBC do Hive.
Propriedade | Descrição |
---|---|
Nome da Fonte de Dados | Forneça um nome para a sua fonte de dados. |
Host | Insira CLUSTERNAME.azurehdinsight.net. Por exemplo, use myHDICluster.azurehdinsight.net. |
Porta | Use 443. (Essa porta foi alterada de 563 para 443.) |
Backup de banco de dados | Use Padrão. |
Tipo de servidor Hive | Selecione Hive Server 2. |
Mecanismo | Selecione Serviço do Azure HDInsight. |
Caminho HTTP | Deixe em branco. |
Nome do Usuário | Digite hiveuser1@contoso158.onmicrosoft.com . Atualize o nome de domínio se ele for diferente. |
Senha | Insira a senha para hiveuser1 . |
Selecione Testar antes de salvar a fonte de dados.
Importar dados do HDInsight para o Excel
Na última seção, você configurou duas políticas: hiveuser1
tem a permissão de seleção em todas as colunas e hiveuser2
tem a permissão de seleção em duas colunas. Nesta seção, você representa os dois usuários para importar dados para o Excel.
Abra uma pasta de trabalho nova ou existente no Excel.
Na guia Dados, acesse Obter Dados>de Outras Fontes>do ODBC para abrir a janela do ODBC.
Na lista suspensa, escolha o nome da fonte de dados que você criou na última seção e escolha OK.
No primeiro uso, uma caixa de diálogo do Driver ODBC se abrirá. Escolha Windows no menu à esquerda. Escolha Conectar para abrir a janela Navegador.
Aguarde a abertura da caixa de diálogo
Select Database and Table
. Esta etapa pode demorar alguns segundos.Selecione hivesampletable>Avançar.
Selecione Concluir.
No diálogo Importar Dados , você pode alterar ou especificar a consulta. Para fazer isso, selecione Propriedades. Esta etapa pode demorar alguns segundos.
Selecione a guia Definição. O texto do comando é:
SELECT * FROM "HIVE"."default"."hivesampletable"`
De acordo com as políticas do Ranger definidas por você,
hiveuser1
tem permissão de seleção em todas as colunas. Essa consulta funciona com as credenciais dehiveuser1
, mas não funciona com as credenciais dehiveuser2
.Selecione OK para fechar o diálogo Propriedades da Conexão.
Selecione OK para fechar a caixa de diálogo Importar Dados.
Insira novamente a senha de
hiveuser1
e selecione OK. Leva alguns segundos até que os dados sejam importados para o Excel. Quando terminar, você verá 11 colunas de dados.
Para testar a segunda política (read-hivesampletable-devicemake) que você criou na seção anterior:
Adicione uma nova planilha no Excel.
Siga o último procedimento para importar os dados. A única alteração que você faz é usar as credenciais de
hiveuser2
em vez dehiveuser1
. Essa ação falha porquehiveuser2
tem permissão para ver apenas duas colunas. Você obtém o seguinte erro:[Microsoft][HiveODBC] (35) Error from Hive: error code: '40000' error message: 'Error while compiling statement: FAILED: HiveAccessControlException Permission denied: user [hiveuser2] does not have [SELECT] privilege on [default/hivesampletable/clientid,country ...]'.
Siga o mesmo procedimento para importar dados. Desta vez, use as credenciais de
hiveuser2
e também modifique a instrução select de:SELECT * FROM "HIVE"."default"."hivesampletable"
Para:
SELECT clientid, devicemake FROM "HIVE"."default"."hivesampletable"
Quando terminar, você verá duas colunas de dados importados.
Próximas etapas
- Para configurar um cluster do HDInsight com ESP, confira Configurar os clusters do HDInsight com ESP.
- Para gerenciar um cluster do HDInsight com ESP, confira Gerenciar os clusters do HDInsight com ESP.
- Para executar consultas do Hive usando o Secure Shell (SSH) em clusters do HDInsight com ESP, confira Usar o SSH com o HDInsight.
- Para conectar o Hive usando o Java Database Connectivity (JDBC) do Hive, confira Conectar-se ao Apache Hive no Azure HDInsight usando o driver JDBC do Hive.
- Para conectar o Excel ao Hadoop usando o ODBC do Hive, confira Conectar o Excel ao Apache Hadoop com o diver ODBC do Microsoft Hive.
- Para conectar o Excel ao Hadoop usando o Power Query, confira Conectar o Excel ao Apache Hadoop usando o Power Query.