Socket
Socket
Sign inDemoInstall

@sap/xsenv

Package Overview
Dependencies
Maintainers
1
Versions
25
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@sap/xsenv - npm Package Compare versions

Comparing version 5.2.0 to 5.3.0

lib/redactServiceData.js

13

CHANGELOG.md

@@ -8,2 +8,15 @@ # Change Log

## 5.3.0 - 2024-09-19
### Added
- Redacted sensitive information in debug console for k8s services
### Updated
- Updated `debug` dependency to 4.3.7
- Updated `node-cache` dependency to 5.1.2
- Updated `eslint` dependency to 8.57.1
- Updated `filter-node-package` dependency to 4.1.0
- Updated `mocha` dependency to 10.7.3
- Updated `node-build` dependency to 3.0.0
## 5.2.0 - 2024-07-22

@@ -10,0 +23,0 @@

7

lib/k8sservice.js

@@ -11,2 +11,3 @@ 'use strict';

const k8sSecretsCache = new NodeCache({ stdTTL: 9 * 60 });
const redactServicesSecretData = require('./redactServiceData').redactServicesSecretData;

@@ -108,3 +109,4 @@ exports.readK8SServices = readK8SServices;

debug(`Cached Secrets found: ${secretsPath}-services`);
debug(cachedSecrets);
let redactedResult = redactServicesSecretData(cachedSecrets);
debug(redactedResult);
return cachedSecrets;

@@ -116,3 +118,4 @@ }

debug(`Caching Secret: ${secretsPath}-services`);
debug(result);
let redactedResult = redactServicesSecretData(result);
debug(redactedResult);
k8sSecretsCache.set(`${secretsPath}-services`, result);

@@ -119,0 +122,0 @@ }

@@ -11,3 +11,3 @@ 'use strict';

const readServiceBindingServices = require('./serviceBindingService').readServiceBindingServices;
const secretKeys = ['certificate','key', 'verificationkey', 'clientsecret', 'password', 'usersecret'];
const redactServicesSecretData = require('./redactServiceData').redactServicesSecretData;

@@ -19,3 +19,2 @@

exports.readServices = readServices;
exports.redactServicesSecretData = redactServicesSecretData;

@@ -129,3 +128,4 @@ /**

function logFilterResults(serviceType, filter, path, results) {
debug('%s Service filter with filter: %s and path: %s, returned: %s.', serviceType, filter, path, results);
let redactedResult = redactServicesSecretData(results);
debug('%s Service filter with filter: %s and path: %s, returned: %s.', serviceType, filter, path, redactedResult);
}

@@ -175,5 +175,4 @@

if (serviceBindingServices && Object.keys(serviceBindingServices).length > 0) {
// TODO: Add next when k8s services are tested in K8S environment
// let redactedServices = redactServicesSecretData(serviceBindingServices);
debug('Found Service Bindings, returning: %s', serviceBindingServices);
let redactedServices = redactServicesSecretData(serviceBindingServices);
debug('Found Service Bindings, returning: %s', redactedServices);
return serviceBindingServices;

@@ -183,30 +182,5 @@ }

let k8sServices = readK8SServices(path, options && options.disableCache);
// TODO: Add next when k8s services are tested in K8S environment
// let redactedServices = redactServicesSecretData(k8sServices);
debug('Empty VCAP_SERVICES, returning K8s services: %s.', JSON.stringify(k8sServices));
let redactedServices = redactServicesSecretData(k8sServices);
debug('Empty VCAP_SERVICES, returning K8s services: %s.', JSON.stringify(redactedServices));
return k8sServices || {};
}
function redactServicesSecretData(serviceData) {
console.log('Redacting Services Secret Data');
let services = JSON.parse(JSON.stringify(serviceData));
if (!Object.keys(services) || Object.keys(services).length === 0){
console.log('Did not find any services keys in service data.');
return;
}
for (let service in services){
if (!services[service].credentials){
return;
}
for (let sk in secretKeys){
let skey = secretKeys[sk];
if (services[service].credentials[skey]){
services[service].credentials[skey] = 'redacted';
}
}
}
console.log(services);
return services;
}
{
"name": "@sap/xsenv",
"version": "5.2.0",
"version": "5.3.0",
"description": "Utility for easy setup and access of SAP HANA XS Advanced environment variables",

@@ -26,9 +26,9 @@ "repository": {},

"devDependencies": {
"eslint": "8.57.0",
"filter-node-package": "4.0.0",
"eslint": "8.57.1",
"filter-node-package": "4.1.0",
"c8": "10.1.2",
"lodash": "4.17.21",
"mocha": "10.7.0",
"mocha": "10.7.3",
"mock-fs": "5.2.0",
"node-build": "^2.0.1",
"node-build": "^3.0.0",
"node-style": "^2.0.0",

@@ -39,6 +39,6 @@ "proxyquire": "^2.1.3",

"dependencies": {
"debug": "4.3.5",
"node-cache": "^5.1.0",
"debug": "4.3.7",
"node-cache": "^5.1.2",
"verror": "1.10.1"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc