Add support for HTTP bearer authentication

This commit is contained in:
Jeremy Ruston
2024-10-10 15:10:55 +01:00
parent 48cbaa1ec7
commit a51afc8b81
3 changed files with 10 additions and 1 deletions
+5
View File
@@ -104,6 +104,8 @@ basicAuthUsername: plain username for basic authentication
basicAuthUsernameFromStore: name of password store entry containing username
basicAuthPassword: plain password for basic authentication
basicAuthPasswordFromStore: name of password store entry containing password
bearerAuthToken: plain text token for bearer authentication
bearerAuthTokenFromStore: name of password store entry contain bear authorization token
*/
function HttpClientRequest(options) {
var self = this;
@@ -135,8 +137,11 @@ function HttpClientRequest(options) {
});
this.basicAuthUsername = options.basicAuthUsername || (options.basicAuthUsernameFromStore && $tw.utils.getPassword(options.basicAuthUsernameFromStore)) || "";
this.basicAuthPassword = options.basicAuthPassword || (options.basicAuthPasswordFromStore && $tw.utils.getPassword(options.basicAuthPasswordFromStore)) || "";
this.bearerAuthToken = options.bearerAuthToken || (options.bearerAuthTokenFromStore && $tw.utils.getPassword(options.bearerAuthTokenFromStore)) || "";
if(this.basicAuthUsername && this.basicAuthPassword) {
this.requestHeaders.Authorization = "Basic " + $tw.utils.base64Encode(this.basicAuthUsername + ":" + this.basicAuthPassword);
} else if(this.bearerAuthToken) {
this.requestHeaders.Authorization = "Bearer " + this.bearerAuthToken;
}
}