@sap/xsenv
Advanced tools
Comparing version 5.2.0 to 5.3.0
@@ -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 @@ |
@@ -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" | ||
} | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
58441
14
552
+ Addeddebug@4.3.7(transitive)
+ Addedms@2.1.3(transitive)
- Removeddebug@4.3.5(transitive)
- Removedms@2.1.2(transitive)
Updateddebug@4.3.7
Updatednode-cache@^5.1.2