mirror of
https://github.com/usebruno/bruno.git
synced 2026-07-08 14:35:03 +00:00
feat(auth): akamai auth integration (#8199)
This commit is contained in:
@@ -15,7 +15,7 @@ const { encodeUrl, hasExplicitScheme } = require('@usebruno/common').utils;
|
||||
const { extractPromptVariables } = require('@usebruno/common').utils;
|
||||
const { interpolateString } = require('./interpolate-string');
|
||||
const { resolveAwsV4Credentials, addAwsV4Interceptor } = require('./awsv4auth-helper');
|
||||
const { addDigestInterceptor } = require('@usebruno/requests');
|
||||
const { addDigestInterceptor, addEdgeGridInterceptor } = require('@usebruno/requests');
|
||||
const prepareGqlIntrospectionRequest = require('./prepare-gql-introspection-request');
|
||||
const { prepareRequest } = require('./prepare-request');
|
||||
const interpolateVars = require('./interpolate-vars');
|
||||
@@ -315,6 +315,11 @@ const configureRequest = async (
|
||||
addDigestInterceptor(axiosInstance, request);
|
||||
}
|
||||
|
||||
if (request.edgeGridConfig) {
|
||||
addEdgeGridInterceptor(axiosInstance, request);
|
||||
delete request.edgeGridConfig;
|
||||
}
|
||||
|
||||
// Get timeout from request settings, fallback to global preference
|
||||
const resolvedSettings = resolveInheritedSettings(request.settings || {});
|
||||
request.timeout = resolvedSettings.timeout;
|
||||
|
||||
@@ -91,6 +91,18 @@ const setAuthHeaders = (axiosRequest, request, collectionRoot) => {
|
||||
axiosRequest.apiKeyAuthValueForQueryParams = apiKeyAuth;
|
||||
}
|
||||
break;
|
||||
case 'akamai-edgegrid':
|
||||
axiosRequest.edgeGridConfig = {
|
||||
accessToken: get(collectionAuth, 'akamaiEdgegrid.accessToken'),
|
||||
clientToken: get(collectionAuth, 'akamaiEdgegrid.clientToken'),
|
||||
clientSecret: get(collectionAuth, 'akamaiEdgegrid.clientSecret'),
|
||||
nonce: get(collectionAuth, 'akamaiEdgegrid.nonce'),
|
||||
timestamp: get(collectionAuth, 'akamaiEdgegrid.timestamp'),
|
||||
baseURL: get(collectionAuth, 'akamaiEdgegrid.baseURL'),
|
||||
headersToSign: get(collectionAuth, 'akamaiEdgegrid.headersToSign'),
|
||||
maxBodySize: get(collectionAuth, 'akamaiEdgegrid.maxBodySize')
|
||||
};
|
||||
break;
|
||||
case 'oauth2':
|
||||
const grantType = get(collectionAuth, 'oauth2.grantType');
|
||||
switch (grantType) {
|
||||
@@ -345,6 +357,18 @@ const setAuthHeaders = (axiosRequest, request, collectionRoot) => {
|
||||
axiosRequest.apiKeyAuthValueForQueryParams = apiKeyAuth;
|
||||
}
|
||||
break;
|
||||
case 'akamai-edgegrid':
|
||||
axiosRequest.edgeGridConfig = {
|
||||
accessToken: get(request, 'auth.akamaiEdgegrid.accessToken'),
|
||||
clientToken: get(request, 'auth.akamaiEdgegrid.clientToken'),
|
||||
clientSecret: get(request, 'auth.akamaiEdgegrid.clientSecret'),
|
||||
nonce: get(request, 'auth.akamaiEdgegrid.nonce'),
|
||||
timestamp: get(request, 'auth.akamaiEdgegrid.timestamp'),
|
||||
baseURL: get(request, 'auth.akamaiEdgegrid.baseURL'),
|
||||
headersToSign: get(request, 'auth.akamaiEdgegrid.headersToSign'),
|
||||
maxBodySize: get(request, 'auth.akamaiEdgegrid.maxBodySize')
|
||||
};
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user