
Research
/Security News
OpenAPI React Query Codegen Compromised in Mini Shai-Hulud npm Supply Chain Attack
Ten malicious OpenAPI React Query Codegen versions were published to npm in the Mini Shai-Hulud attack, all with valid provenance.
cloudelements-cehandler
Advanced tools
This is Cloud Elements Executor, which is distributed as a function library for independent on-prem execution that replicates the functionality of elements built on the Cloud Elements service.
All code and features within this service are Copyright (c) Cloud Elements 2016, 2017 unless otherwise indicated.
Cloud Elements offers a set of HTTP APIs that simplify the use of a back-end vendors service offering. Each back-end vendor has a connector plugin on Cloud Elements called an "Element", which allows Cloud Elements users to easily manage their interactions with that back-end vendor.
The Cloud Elements Executor is designed to independently replicate Cloud Elements functionality. It is written as a stand-alone JavaScript function which accepts a request-like JavaScript object, and return a response-like JavaScript object, which roughly correspond to the HTTP request and HTTP response data of Elements. This function will contact the back-end service directly, without any intervening calls to the Cloud Elements cloud itself.
Because the Executor accurately replicates Element API functionality, any API metadata that describes Element APIs (such as Swagger documentation) also apply to the request and response JavaScript objects that are passed into/out of the function.
There are two major data that are required to use the Executor:
The Element descriptor. This is usually saved as JSON in a file named 'element.json', and contains the complete set of information needed to complete a request to a particular back-end vendor.
The request data for actually making the API request.
Once these are secured, a request can be made to the backend. Here's an example of hard coding the request, and printing out the result:
const element = loadElement();
const requestData = {
"headers": {
"x-vendor-authorization": authKey,
"x-vendor-region": "com"
},
"operation": {
"method": "GET",
"path": "/contacts"
},
"queryParameters": {
"nextPage": "eyJwYWdlIjozLCJwYWdlU2l6ZSI6NSwib2Zmc2V0IjoxMH0=",
},
"body": {},
"paths": {}
}
executor.elementHandler(element)(
requestData, {
requestId: 'test-run-request',
succeed: o => console.log(JSON.stringify(o, null, 2)),
fail: o => console.warn('failure', typeof(o), o),
done: (err, o) => {
console.warn('error', typeof(err), err);
console.log(o);
}
}
);
Under the hood, the Executor reads the element descriptor file to find all the Cloud Elements public APIs for the given element, and how those APIs map to the back-end service offerings. After that, the request object is appropriately transformed, one or more actual backend request are made, and the resultant response(s) are clarified into a digestable form to return to the function caller.
Paging, format selection (XML, SOAP, JSON, etc), request signing, and other service concerns are configured in the element.json itself, and handled behind-the-scenes as appropriate in order to deliver a simple, streamlined developer experience.
FAQs
An independent execution function for elements
We found that cloudelements-cehandler demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.

Research
/Security News
Ten malicious OpenAPI React Query Codegen versions were published to npm in the Mini Shai-Hulud attack, all with valid provenance.

Security News
Socket joins more than 100 technology, cybersecurity, and financial organizations calling for a global surge in cyber defense.

Product
Enterprise security teams can now detect malware, credential theft, suspicious network activity, and risky updates across Microsoft Edge extensions.