Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Autenticación y control de acceso para aplicaciones de usuario
Las aplicaciones de nivel de usuario de Amazon WorkDocs se registran y administran mediante la consola de Amazon WorkDocs. Los desarrolladores deben registrar sus aplicaciones en elMy Applications
en la consola de Amazon WorkDocs en la que se proporcionan ID únicos para cada aplicación. Durante el registro, los desarrolladores deben especificar los URI de redirección en los que recibirán los tokens de acceso, así como el ámbito de la aplicación.
Actualmente, las aplicaciones solo pueden obtener acceso a los sitios de Amazon WorkDocs en el mismoAWScuenta en la que están registradas.
Contenido
Cree una aplicación
Como administrador de Amazon WorkDocs, cree su aplicación mediante los siguientes pasos.
Para crear una aplicación
-
Abra la consola de Amazon WorkDocs enhttps://console.aws.amazon.com/zocalo/
. -
Elija Mis aplicaciones, Crear una aplicación.
-
Escriba los siguientes valores:
- Nombre de la aplicación
-
Nombre de la aplicación.
- Correo electrónico
-
Dirección de correo electrónico que se va a asociar a la aplicación.
- Descripción de la aplicación
-
Descripción de la aplicación.
- URI de redirección
-
La ubicación en la que desea que Amazon WorkDocs redirija el tráfico.
- Ámbitos de la aplicación
-
El ámbito (lectura o escritura) que desea que tenga la aplicación. Para obtener más información, consulte Ámbitos de la aplicación.
-
Elija Create (Crear).
Ámbitos de la aplicación
Amazon WorkDocs admite los siguientes ámbitos de aplicación:
-
Lectura de contenido (
workdocs.content.read
), que proporciona a la aplicación acceso a las siguientes API de Amazon WorkDocs siguientes:-
Get*
-
Describe*
-
-
Escritura de contenido (
workdocs.content.write
), que proporciona a la aplicación acceso a las siguientes API de Amazon WorkDocs siguientes:-
Create*
-
Update*
-
Delete*
-
Initiate*
-
Abort*
-
Add*
-
Remove*
-
Autorización
Una vez completado el registro de la aplicación, una aplicación puede solicitar autorización en nombre de cualquier usuario de Amazon WorkDocs. Para ello, la aplicación debe visitar el punto de enlace OAuth de Amazon WorkDocs,https://auth.amazonworkdocs.com/oauth
, y proporciona los siguientes parámetros de consulta:
-
[Obligatorio]
app_id
: ID de aplicación generada cuando se registra una aplicación. -
[Obligatorio]
auth_type
: el tipo OAuth de la solicitud. El valor admitido esImplicitGrant
. -
[Obligatorio]
redirect_uri
: el URI de redirección registrado para una aplicación para recibir un token de acceso. -
[Opcional]
scopes
: una lista de ámbitos delimitada por comas. Si no se especifica, se usa la lista de ámbitos seleccionados durante el registro. -
[Opcional]
state
: una cadena que se devuelve junto con un token de acceso.
Si necesita módulos criptográficos validados FIPS 140-2 al acceder a AWS a través de una interfaz de línea de comandos o una API, utilice un punto de enlace de FIPS. Para obtener más información sobre los puntos de enlace de FIPS disponibles, consulte Estándar de procesamiento de la información federal (FIPS) 140-2
Una solicitud GET de ejemplo para iniciar el flujo de OAuth para obtener un token de acceso:
GET https://auth.amazonworkdocs.com/oauth?app_id=
my-app-id
&auth_type=ImplicitGrant&redirect_uri=https://myapp.com/callback
&scopes=workdocs.content.read
&state=xyz
Estas son las operaciones que tienen lugar durante el flujo de autorización de OAuth:
-
Se pide al usuario de la aplicación que escriba el nombre de sitio de Amazon WorkDocs.
-
El usuario es redirigido a la página de autenticación de Amazon WorkDocs para escribir sus credenciales.
-
Una vez realizada la autenticación, se le presenta al usuario la pantalla de consentimiento en la que puede conceder o denegar a la aplicación la autorización para obtener acceso a Amazon WorkDocs.
-
Cuando el usuario elige
Accept
en la pantalla de consentimiento, el navegador se redirige a la URL de devolución de llamada de la aplicación con el token de acceso y la información de la región como parámetros de consulta.
Una solicitud GET de ejemplo desde Amazon WorkDocs:
GET https://myapp.com/callback?acessToken=
accesstoken
®ion=us-east-1
&state=xyz
Además del token de acceso, el servicio OAuth de Amazon WorkDocs de devuelve tambiénregion
como parámetro de consulta para el sitio de Amazon WorkDocs seleccionado. Las aplicaciones externas deben utilizar elregion
para determinar el punto de enlace del servicio de Amazon WorkDocs.
Si necesita módulos criptográficos validados FIPS 140-2 al acceder a AWS a través de una interfaz de línea de comandos o una API, utilice un punto de enlace de FIPS. Para obtener más información sobre los puntos de enlace de FIPS disponibles, consulte Estándar de procesamiento de la información federal (FIPS) 140-2
Invocación de API de Amazon WorkDocs
Una vez obtenido el token de acceso, la aplicación puede realizar llamadas a la API de a los servicios de Amazon WorkDocs.
Una solicitud curl GET de ejemplo para obtener los metadatos de un documento:
Curl "https://workdocs.us-east-1.amazonaws.com/api/v1/documents/
{document-id}
" -H "Accept: application/json" -H "Authentication: Beareraccesstoken
"
Una función JavaScript de ejemplo para describir las carpetas raíz del usuario:
function printRootFolders(accessToken, siteRegion) { var workdocs = new AWS.WorkDocs({region: siteRegion}); workdocs.makeUnauthenticatedRequest("describeRootFolders", {AuthenticationToken: accessToken}, function (err, folders) { if (err) console.log(err); else console.log(folders); }); }
A continuación se describe una invocación a una API basada en Java de ejemplo:
AWSCredentialsProvider credentialsProvider = new AWSCredentialsProvider() { @Override public void refresh() {} @Override public AWSCredentials getCredentials() { new AnonymousAWSCredentials(); } }; // Set the correct region obtained during OAuth flow. workDocs = AmazonWorkDocsClient.builder().withCredentials(credentialsProvider) .withRegion(Regions.US_EAST_1).build(); DescribeRootFoldersRequest request = new DescribeRootFoldersRequest(); request.setAuthenticationToken("access-token-obtained-through-workdocs-oauth"); DescribeRootFoldersResult result = workDocs.describeRootFolders(request); for (FolderMetadata folder : result.getFolders()) { System.out.printf("Folder name=%s, Id=%s \n", folder.getName(), folder.getId()); }