58 lines
1.3 KiB
Plaintext
58 lines
1.3 KiB
Plaintext
include::../description.adoc[]
|
|
|
|
include::../ask-yourself.adoc[]
|
|
|
|
include::../recommended.adoc[]
|
|
|
|
== Sensitive Code Example
|
|
|
|
https://github.com/http-party/node-http-proxy[node-http-proxy]
|
|
|
|
----
|
|
var httpProxy = require('http-proxy');
|
|
|
|
httpProxy.createProxyServer({target:'http://localhost:9000', xfwd:true}) // Noncompliant
|
|
.listen(8000);
|
|
----
|
|
|
|
https://github.com/chimurai/http-proxy-middleware[http-proxy-middleware]
|
|
|
|
----
|
|
var express = require('express');
|
|
|
|
const { createProxyMiddleware } = require('http-proxy-middleware');
|
|
|
|
const app = express();
|
|
|
|
app.use('/proxy', createProxyMiddleware({ target: 'http://localhost:9000', changeOrigin: true, xfwd: true })); // Noncompliant
|
|
app.listen(3000);
|
|
----
|
|
|
|
== Compliant Solution
|
|
|
|
https://github.com/http-party/node-http-proxy[node-http-proxy]
|
|
|
|
----
|
|
var httpProxy = require('http-proxy');
|
|
|
|
// By default xfwd option is false
|
|
httpProxy.createProxyServer({target:'http://localhost:9000'}) // Compliant
|
|
.listen(8000);
|
|
----
|
|
|
|
https://github.com/chimurai/http-proxy-middleware[http-proxy-middleware]
|
|
|
|
----
|
|
var express = require('express');
|
|
|
|
const { createProxyMiddleware } = require('http-proxy-middleware');
|
|
|
|
const app = express();
|
|
|
|
// By default xfwd option is false
|
|
app.use('/proxy', createProxyMiddleware({ target: 'http://localhost:9000', changeOrigin: true})); // Compliant
|
|
app.listen(3000);
|
|
----
|
|
|
|
include::../see.adoc[]
|