Autenticação de usuário final com Azure Data Lake Storage Gen1 usando Java

Observação

O Azure Data Lake Storage Gen1 foi desativado. Veja o edital de aposentadoria aqui. Os recursos do Data Lake Storage Gen1 não estão mais acessíveis.

Neste artigo, você aprende como usar o SDK do Java para fazer autenticação de usuário final com Azure Data Lake Storage Gen1. Para autenticação de serviço a serviço com Data Lake Storage Gen1 usando SDK do Java, consulte Autenticação de serviço a serviço com o Data Lake Storage Gen1 usando Java.

Pré-requisitos

Autenticação do usuário final

  1. Crie um projeto do Maven usando mvn archetype na linha de comando ou usando um IDE. Para obter instruções sobre como criar um projeto Java usando IntelliJ, veja aqui. Para obter instruções sobre como criar um projeto usando o Eclipse, veja aqui.

  2. Adicione as dependências a seguir para o arquivo pom.xml do Maven. Adicione o snippet a seguir antes da marca </project>:

    <dependencies>
      <dependency>
        <groupId>com.microsoft.azure</groupId>
        <artifactId>azure-data-lake-store-sdk</artifactId>
        <version>2.2.3</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-nop</artifactId>
        <version>1.7.21</version>
      </dependency>
    </dependencies>
    

    A primeira dependência é usar o SDK do Data Lake Storage Gen1 (azure-data-lake-store-sdk) do repositório maven. A segunda dependência serve para especificar qual estrutura de registros (slf4j-nop) usar para o aplicativo. O SDK do Data Lake Storage Gen1 usa fachada de registros SLF4J, o que permite escolher entre uma série de estruturas de registros populares como Log4j, registro do Java, Logback, etc., ou nenhum registro. Para este exemplo, desabilitamos o registro em log, por isso, usamos a associação slf4j-nop. Para usar outras opções de log em seu aplicativo, veja aqui.

  3. Adicione as seguintes instruções import ao seu aplicativo.

    import com.microsoft.azure.datalake.store.ADLException;
    import com.microsoft.azure.datalake.store.ADLStoreClient;
    import com.microsoft.azure.datalake.store.DirectoryEntry;
    import com.microsoft.azure.datalake.store.IfExists;
    import com.microsoft.azure.datalake.store.oauth2.AccessTokenProvider;
    import com.microsoft.azure.datalake.store.oauth2.DeviceCodeTokenProvider;
    
  4. Use o snippet a seguir em seu aplicativo do Java para obter o token para o aplicativo nativo do Active Directory que foi criado anteriormente usando o DeviceCodeTokenProvider. Substitua FILL-IN-HERE pelos valores reais do aplicativo nativo do Microsoft Entra.

    private static String nativeAppId = "FILL-IN-HERE";
    
    AccessTokenProvider provider = new DeviceCodeTokenProvider(nativeAppId);   
    

O SDK do Data Lake armazenamento Gen1 fornece métodos convenientes que permitem que você gerencie os tokens de segurança necessários para se comunicar com a conta do Data Lake armazenamento Gen1. No entanto, o SDK não exige que apenas esses métodos sejam usados. Você também pode usar qualquer outro meio de obter token, como usar o SDK do Azure AD ou seu próprio código personalizado.

Próximas etapas

Neste artigo, você aprendeu como usar a autenticação de usuário final para autenticar com o Azure Data Lake Storage Gen1 usando SDK do Java. Agora você pode consultar os artigos a seguir que descrevem como usar o SDK do Java para trabalhar com o Azure Data Lake Storage Gen1.