- Created by Alfredo Lopez (Unlicensed), last modified on Aug 25, 2019
- Translate page
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 6 Next »
CONFIGURACIÓN NECESARIA
Handlers: para poder tener acceso al API de GAM la cual permite gestionar el acceso a los servicios mediante un token de acceso, para esto el archivo web.config debe contener en la sección de handlers el elemento:
<add name="GeneXus.Http.GXOAuthAccessToken" verb="*" path="GXOAuthAccessToken.aspx" type="GeneXus.Http.GXOAuthAccessToken,GxClasses" />
Usuario: es recomendable crear un usuario en el GAM para para permitir el acceso exclusivo a los web services.
Roles y Permisos: Se debe crear un rol específico para el uso de web services con los permisos de los web services expuestos y este rol debe ser asignado al usuario que se utilizará para la conexión. Por cada web service expuesto sobre una transacción Genexus existen permisos relacionados, los cuales deben llevar el sufijo con el permiso otorgado, la estructura es
[Transaccion]_Service_[Tipo de Permiso]
Entre los tipos de permisos están:
Execute
Permite operaciones GETInsert
Permite operaciones POSTDelete
Permite operaciones DELETEUpdate
Permite operaciones PUTFullControl
Permite realizar GET, POST, PUT y DELETE sobre el web service.
WEB SERVICE DE AUTENTICACIÓN
ACCESS TOKEN
Para obtener el token de acceso es necesario realizar POST con los parámetros
Donde los parámetros client_id y client_secret deben obtenerse de los parámetros de la aplicación en el GAM
esta información puede ser revisada en el menú Configuración - Seguridad - Configuración de la Aplicación
PETICIÓN DE ACCESO
POST a
HTTP://<SERVER>/<APPDIR>/oauth/access_token
Incluyendo en el body:
client_id=1234561ad52a42919a221bc796d0d6b0&client_secret=1111114313d243dd987b3aadb250e63b&granttype=password&scope=FullControl&username=admin&password=admin123
Como respuesta se obtendrá un JSON con el token de acceso el cual deberá utilizarse en el encabezado de petición de consumo de los objetos expuestos
{ "access token" : "c9919e10e118" "scope" : "FullControl" }
CONSUMO DE WEB SERVICE
Petición con la estructura:
HTTP://<SERVER>/<APPDIR>/rest/WEB_SERVICE/PARM_1/PARM_2/PARM_N
Encabezados obligatorios:
“Content-Type”, ”application/json” “Authorization”, “OAuth ” + access_token “GENEXUS-AGENT”, “SmartDevice Application”
Respete los encabezados obligatorios para que pueda consumir el WEB SERVICE respectivo
NO OLVIDE crear un usuario en el GAM para para permitir el acceso exclusivo a los web services. Y incluir en el archivo web.config debe contener en la sección de handlers el elemento indicado en la primera parte de esta pagina.
- No labels