private static List<String> getPermissions(int permission) { List<String> list = new LinkedList<>(); if (PermissionConstants.ALL == permission) { list.add(PermissionConstants.getTextForCode(permission)); } else { for (Integer code : PermissionConstants.getPermissions()) { if ((permission & code) != 0) { list.add(PermissionConstants.getTextForCode(code)); } } } return list; }
@Override public void assertPermitted(int permission) throws InsuffientPermissionException { if (!isPermitted(permission)) { throw new InsuffientPermissionException("Permission " + PermissionConstants.getTextForCode(permission) + " is not permitted"); } }
@Override public void assertPermitted(int permission) throws InsuffientPermissionException { if (!isPermitted(permission)) { throw new InsuffientPermissionException("Permission " + PermissionConstants.getTextForCode(permission) + " is not permitted"); } }
private void checkPermission(CmpRequestorInfo requestor, int requiredPermission) throws InsuffientPermissionException { X509Ca ca = getCa(); int permission = ca.getCaInfo().getPermission(); if (!PermissionConstants.contains(permission, requiredPermission)) { throw new InsuffientPermissionException("Permission " + PermissionConstants.getTextForCode(requiredPermission) + "is not permitted"); } requestor.assertPermitted(requiredPermission); } // method checkPermission
private static void checkUserPermission(ByUserRequestorInfo requestor, String certprofile) throws OperationException { int permission = PermissionConstants.ENROLL_CERT; if (!requestor.isPermitted(permission)) { throw new OperationException(ErrorCode.NOT_PERMITTED, PermissionConstants.getTextForCode(permission) + " is not permitted for user " + requestor.getCaHasUser().getUserIdent().getName()); } if (!requestor.isCertprofilePermitted(certprofile)) { throw new OperationException(ErrorCode.NOT_PERMITTED, "Certificate profile " + certprofile + " is not permitted for user " + requestor.getCaHasUser().getUserIdent().getName()); } }
ErrorCode code = ex.getErrorCode(); LOG.warn("{}, OperationException: code={}, message={}", PermissionConstants.getTextForCode(permission), code.name(), ex.getErrorMessage()); String errorMessage; switch (code) {