Tareas avanzadas > Uso del ID de FileMaker para la autenticación externa
 

Uso del ID de FileMaker para la autenticación externa

Si desea utilizar Claris FileMaker Data API o OData API con FileMaker Cloud, debe autenticarse mediante su ID de FileMaker. FileMaker Cloud utiliza Amazon Cognito para la autenticación externa.

Amazon Cognito gestiona los usuarios mediante conjuntos de usuarios, que proporcionan servicios como, por ejemplo, el inicio de sesión, la autenticación con proveedores de identidad, la administración de perfiles y directorios de usuarios, y la supervisión de seguridad. (Consulte la sección sobre los conjuntos de usuarios de Amazon Cognito).

Para autenticarse mediante el ID de FileMaker:

1. Recupere los valores de los parámetros UserPoolId y ClientId.

Amazon Cognito requiere los parámetros UserPoolId y ClientId para la autenticación de usuarios. FileMaker Cloud proporciona el siguiente punto de conexión:

https://www.ifmcloud.com/endpoint/userpool/
0.0.0.my.filemaker.com.jsonf

El punto de conexión devuelve los siguientes resultados:

{
"errcode":"Correcto",
"errmessage":null,
"data":{
"Region": "us-west-2",
"UserPool_ID":"us-west-2_NqkuZcXQY",
"Client_ID":"4l9rvl4mv5es1eep1qe97cautn",
"API_Host": "api-cloud-platform.ifmcloud.com",
"FCC_Host": "console.filemaker-cloud.com"
},
"csrid":null
}

Nota  Los valores devueltos de Region y API_Host no se utilizan para la autenticación.

2. Utilice Amazon Cognito Identity SDK for JavaScript para autenticar usuarios mediante Amazon Cognito. (Consulte Amazon Cognito Identity SDK for JavaScript). Utilice el ejemplo siguiente en el código de JavaScript para recuperar los valores del token del ID de FileMaker (FileMaker_ID_token) y el token de actualización del ID de FileMaker (FileMaker_ID_refresh_token).

El token del ID de FileMaker se utiliza para la autenticación al utilizar FileMaker Data API o OData API y es válido durante una hora. El token de actualización del ID de FileMaker permite el uso de guiones para seguir ejecutándose después de que caduque el token del ID de FileMaker y es válido durante un año.

Ejemplo

En este ejemplo:

Se utilizan los valores de UserPool_ID y Client_ID indicados arriba.

En nombre de usuario y contraseña, introduzca el nombre de usuario del ID de FileMaker y la contraseña.

Código de ejemplo:

var authenticationData = {
Username : 'nombre de usuario',
Password : 'contraseña',
};
var authenticationDetails = new AmazonCognitoIdentity.AuthenticationDetails(authenticationData);
var poolData = { UserPoolId : 'us-west-2_NqkuZcXQY',
ClientId : '4l9rvl4mv5es1eep1qe97cautn'
  };
var userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
var userData = {
Username : 'nombre de usuario',
Pool : userPool
};
var cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
cognitoUser.authenticateUser(authenticationDetails, {
onSuccess: function (result) {
var Cognito_access_token = result.getAccessToken().getJwtToken();
var FileMaker_ID_token = result.idToken.jwtToken;
var FileMaker_ID_refresh_token = result.refreshToken.token;
},
onFailure: function(err) {
alert(err);
},
});