Connect to WorkDocs with IAM: credenziali utente e query per gli utenti - Amazon WorkDocs

Avviso: le registrazioni di nuovi clienti e gli upgrade degli account non sono più disponibili per Amazon. WorkDocs Scopri le fasi di migrazione qui: Come migrare i dati da. WorkDocs

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Connect to WorkDocs with IAM: credenziali utente e query per gli utenti

Il codice seguente mostra come utilizzare le credenziali API di un utente IAM per effettuare chiamate API. In questo caso l'utente dell'API e il WorkDocs sito appartengono allo stesso AWS account.

Nota

Per una maggiore sicurezza, crea utenti federati anziché utenti IAM quando possibile.

Assicurati che all'utente IAM sia stato concesso l'accesso all' WorkDocs API tramite una policy IAM appropriata.

L'esempio di codice utilizza l'DescribeUsersAPI per cercare utenti e ottenere metadati per gli utenti. I metadati utente forniscono dettagli come nome, cognome, ID utente e ID della cartella principale. L'ID della cartella principale è particolarmente utile se si desidera eseguire operazioni di caricamento o download di contenuti per conto dell'utente.

Il codice richiede l'ottenimento di un ID WorkDocs dell'organizzazione.

Segui questi passaggi per ottenere un ID WorkDocs dell'organizzazione dalla AWS console:

Per ottenere un ID organizzazione
  1. Nel riquadro di navigazione AWS Directory Service console, scegliere Directories (Directory).

  2. Annota il valore dell'ID di directory che corrisponde al tuo WorkDocs sito. Questo è l'ID dell'organizzazione del sito.

L'esempio seguente mostra come utilizzare le credenziali IAM per effettuare chiamate API.

import java.util.ArrayList; import java.util.List; import com.amazonaws.auth.AWSCredentials; import com.amazonaws.auth.AWSStaticCredentialsProvider; import com.amazonaws.auth.BasicAWSCredentials; import com.amazonaws.regions.Regions; import com.amazonaws.services.workdocs.AmazonWorkDocs; import com.amazonaws.services.workdocs.AmazonWorkDocsClient; import com.amazonaws.services.workdocs.model.DescribeUsersRequest; import com.amazonaws.services.workdocs.model.DescribeUsersResult; import com.amazonaws.services.workdocs.model.User; public class GetUserDemo { public static void main(String[] args) throws Exception { AWSCredentials longTermCredentials = new BasicAWSCredentials("accessKey", "secretKey"); AWSStaticCredentialsProvider staticCredentialProvider = new AWSStaticCredentialsProvider(longTermCredentials); AmazonWorkDocs workDocs = AmazonWorkDocsClient.builder().withCredentials(staticCredentialProvider) .withRegion(Regions.US_WEST_2).build(); List<User> wdUsers = new ArrayList<>(); DescribeUsersRequest request = new DescribeUsersRequest(); // The OrganizationId used here is an example and it should be replaced // with the OrganizationId of your WorkDocs site. request.setOrganizationId("d-123456789c"); request.setQuery("joe"); String marker = null; do { request.setMarker(marker); DescribeUsersResult result = workDocs.describeUsers(request); wdUsers.addAll(result.getUsers()); marker = result.getMarker(); } while (marker != null); System.out.println("List of users matching the query string: joe "); for (User wdUser : wdUsers) { System.out.printf("Firstname:%s | Lastname:%s | Email:%s | root-folder-id:%s\n", wdUser.getGivenName(), wdUser.getSurname(), wdUser.getEmailAddress(), wdUser.getRootFolderId()); } } }