@camunda8/sdk
Version:
[](https://www.npmjs.com/package/@camunda8/sdk)
28 lines • 1.39 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BasicAuthProvider = void 0;
const debug_1 = __importDefault(require("debug"));
const lib_1 = require("../../lib");
const trace = (0, debug_1.default)('camunda:oauth');
/**
* The `BasicAuthProvider` class is an implementation of {@link IHeadersProvider}
* that uses basic authentication. This class is responsible for providing
* the Basic authorization header to the SDK for all requests.
*/
class BasicAuthProvider {
constructor(options) {
const config = lib_1.CamundaEnvironmentConfigurator.mergeConfigWithEnvironment(options?.config ?? {});
this.username = (0, lib_1.RequireConfiguration)(config.CAMUNDA_BASIC_AUTH_USERNAME, 'CAMUNDA_BASIC_AUTH_USERNAME');
this.password = (0, lib_1.RequireConfiguration)(config.CAMUNDA_BASIC_AUTH_PASSWORD, 'CAMUNDA_BASIC_AUTH_PASSWORD');
}
getHeaders(audience) {
trace(`Requesting token for audience ${audience}`);
const token = Buffer.from(`${this.username}:${this.password}`).toString('base64');
return Promise.resolve({ authorization: `Basic ${token}` });
}
}
exports.BasicAuthProvider = BasicAuthProvider;
//# sourceMappingURL=BasicAuthProvider.js.map