Using the IDMS REST API trying to access IDMSINFO performance metrics and statistics endpoints getting ZWEAS403E error:
https://<hostname>:<port>/api/v1/systems/<jobname>
ZWEAS403E The user is not authorized to access the target resource: Access is denied.
Release: 19.0
There are 2 types of security with the IDMS REST API:
The ZWEAS403E
error occurs when the endpoint is protected by an external security manager (ESM) but the userid has not been granted access.
The performance metrics services endpoints are protected by the following system authorization facility (SAF) resource:
CLASS: IDMSAPI
RESOURCE: SYST.<Idms_CV_Jobname>
Idms_CV_Jobname
is the jobname or STC name of the IDMS CV.Idms_CV_Jobname
IDMSAPI class.For Top Secret this is documented in section Secure the Performance Metrics Services
For RACF use the following commands:
RDEFINE CDT IDMSAPI UACC(NONE) +
CDTINFO(DEFAULTUACC(NONE) FIRST(ALPHA) MAXLENGTH(42) -
OTHER(ALPHA,NUMERIC,SPECIAL) -
POSIT(?) RACLIST(REQUIRED))
SETROPTS RACLIST(CDT) REFRESH
RDEFINE IDMSAPI SYST.Idms_CV_Jobname UACC(NONE)
PERMIT SYST.Idms_CV_Jobname CLASS(IDMSAPI) ID(userid) ACCESS(READ)
SETROPTS RACLIST(IDMSAPI) REFRESH
For ACF2 use the following commands:
ACF
SET CONTROL(GSO)
INSERT CLASMAP.IDMSAPI RESOURCE(IDMSAPI) RSRCTYPE(IPI)
ACF
SET RESOURCE(IPI)
RECKEY SYST ADD(Idms_CV_Jobname UID(userid) ALLOW)
The JDBC endpoints where a datasource is specified are secured with the APPLID specified in the application.yml file of the IDMS REST API:
zowe.commons.security.saf.applid: {applid}
For RACF use the following commands:
RDEFINE APPL applid UACC(NONE)
PERMIT applid CL(APPL) ACCESS(READ) ID(userid)
For more details on this and examples for Top secret an ACF2, see documentation section Secure REST API with ESMs