Java kullanarak Azure Data Lake Storage 2. Nesil ile hizmet-hizmet kimlik doğrulaması

Bu makalede, java SDK'sını kullanarak Azure Data Lake Storage 2. Nesil ile hizmet-hizmet kimlik doğrulaması yapmayı öğreneceksiniz. Java SDK'sını kullanarak Data Lake Storage 2. Nesil ile son kullanıcı kimlik doğrulaması desteklenmez.

Önkoşullar

Hizmetten hizmete kimlik doğrulaması

  1. Komut satırından mvn archetype veya bir IDE kullanarak Maven projesi oluşturun. IntelliJ kullanarak Java projesi oluşturma yönergeleri için buraya bakın. Eclipse kullanarak proje oluşturma yönergeleri için buraya bakın.

  2. Maven pom.xml dosyanıza aşağıdaki bağımlılıkları ekleyin. /project etiketinden önce aşağıdaki kod parçacığını <ekleyin:>

    <dependencies>
      <dependency>
          <groupId>com.azure</groupId>
          <artifactId>azure-storage-file-datalake</artifactId>
          <version>12.6.0</version>
      </dependency>
      <dependency>
          <groupId>com.azure</groupId>
          <artifactId>azure-identity</artifactId>
          <version>1.3.3</version>
      </dependency>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-nop</artifactId>
        <version>1.7.21</version>
      </dependency>
    </dependencies>
    

    İlk bağımlılık, Maven deposundan Data Lake Storage 2. Nesil SDK'sını (azure-storage-file-datalake) kullanmaktır. İkinci bağımlılık, bu uygulama için kullanılacak günlük çerçevesini (slf4j-nop) belirtmektir. Data Lake Storage 2. Nesil SDK'sı log4j, Java günlüğü, logback veya günlüğe kaydetme yok gibi birçok popüler günlük çerçevesi arasından seçim yapmanızı sağlayan slf4j günlük cephesini kullanır. Bu örnekte, günlük kaydını devre dışı bırakacak ve dolayısıyla slf4j-nop bağlamasını kullanacağız. Uygulamanızdaki diğer günlük seçeneklerini kullanmak için bkz. Günlüğe kaydetme için proje bağımlılıklarını bildirme.

  3. Aşağıdaki içeri aktarma deyimlerini uygulamanıza ekleyin.

    import com.azure.identity.ClientSecretCredential;
    import com.azure.identity.ClientSecretCredentialBuilder;
    import com.azure.storage.file.datalake.DataLakeDirectoryClient;
    import com.azure.storage.file.datalake.DataLakeFileClient;
    import com.azure.storage.file.datalake.DataLakeServiceClient;
    import com.azure.storage.file.datalake.DataLakeServiceClientBuilder;
    import com.azure.storage.file.datalake.DataLakeFileSystemClient;
    import com.azure.storage.file.datalake.models.ListPathsOptions;
    import com.azure.storage.file.datalake.models.PathAccessControl;
    import com.azure.storage.file.datalake.models.PathPermissions;
    
  4. Daha önce sınıfından StorageSharedKeyCredential birini kullanarak oluşturduğunuz Active Directory web uygulaması için belirteç almak için Java uygulamanızda aşağıdaki kod parçacığını kullanın (aşağıdaki örnekte kullanılır credential). Belirteç sağlayıcısı, belirteci bellekte almak için kullanılan kimlik bilgilerini önbelleğe alır ve süresi dolmak üzereyse belirteci otomatik olarak yeniler. Belirteçlerin StorageSharedKeyCredential müşteri kodunuz tarafından alınması için kendi alt sınıflarınızı oluşturabilirsiniz. Şimdilik SDK'da sağlananı kullanalım.

    FILL-IN-HERE değerini Microsoft Entra Web uygulamasının gerçek değerleriyle değiştirin.

    private static String clientId = "FILL-IN-HERE";
    private static String tenantId = "FILL-IN-HERE";
    private static String clientSecret = "FILL-IN-HERE";
    
    ClientSecretCredential credential = new ClientSecretCredentialBuilder().clientId(clientId).tenantId(tenantId).clientSecret(clientSecret).build();
    

Data Lake Storage 2. Nesil SDK'sı, Data Lake Storage 2. Nesil hesabıyla konuşmak için gereken güvenlik belirteçlerini yönetmenize olanak sağlayan kullanışlı yöntemler sağlar. Ancak SDK yalnızca bu yöntemlerin kullanılmasını zorunlu kılmaz. Azure Identity istemci kitaplığını veya kendi özel kodunuzu kullanma gibi başka herhangi bir belirteç alma aracını da kullanabilirsiniz.

Sonraki adımlar

Bu makalede, Java SDK kullanarak Data Lake Storage 2. Nesil kimlik doğrulaması yapmak için son kullanıcı kimlik doğrulamasını kullanmayı öğrendiniz. Artık java SDK'sını kullanarak Data Lake Storage 2. Nesil ile çalışma hakkında bilgi veren aşağıdaki makalelere bakabilirsiniz.