diff --git a/public/app/plugins/datasource/prometheus/configuration/DataSourceHttpSettingsOverhaul.tsx b/public/app/plugins/datasource/prometheus/configuration/DataSourceHttpSettingsOverhaul.tsx index 6f145144441..51b84c12f0e 100644 --- a/public/app/plugins/datasource/prometheus/configuration/DataSourceHttpSettingsOverhaul.tsx +++ b/public/app/plugins/datasource/prometheus/configuration/DataSourceHttpSettingsOverhaul.tsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import { DataSourceSettings } from '@grafana/data'; -import { Auth, ConnectionSettings, convertLegacyAuthProps } from '@grafana/experimental'; +import { Auth, ConnectionSettings, convertLegacyAuthProps, AuthMethod } from '@grafana/experimental'; import { SecureSocksProxySettings, useTheme2 } from '@grafana/ui'; import { AzureAuthSettings } from '@grafana/ui/src/components/DataSourceSettings/types'; @@ -127,21 +127,12 @@ export const DataSourcehttpSettingsOverhaul = (props: Props) => { />
{ - // handle selecting of custom methods // sigV4Id if (sigV4AuthToggleEnabled) { setSigV4Selected(method === sigV4Id); - // mutate jsonData here to store the selected option because of auth component issue with onOptionsChange being overridden - options.jsonData.sigV4Auth = method === sigV4Id; } // Azure @@ -150,7 +141,16 @@ export const DataSourcehttpSettingsOverhaul = (props: Props) => { azureAuthSettings.setAzureAuthEnabled(options, method === azureAuthId); } - newAuthProps.onAuthMethodSelect(method); + onOptionsChange({ + ...options, + basicAuth: method === AuthMethod.BasicAuth, + withCredentials: method === AuthMethod.CrossSiteCredentials, + jsonData: { + ...options.jsonData, + sigV4Auth: method === sigV4Id, + oauthPassThru: method === AuthMethod.OAuthForward, + }, + }); }} // If your method is selected pass its id to `selectedMethod`, // otherwise pass the id from converted legacy data diff --git a/public/app/plugins/datasource/prometheus/types.ts b/public/app/plugins/datasource/prometheus/types.ts index 266a0f089a0..5c5c4a6ac40 100644 --- a/public/app/plugins/datasource/prometheus/types.ts +++ b/public/app/plugins/datasource/prometheus/types.ts @@ -46,6 +46,7 @@ export interface PromOptions extends DataSourceJsonData { incrementalQueryOverlapWindow?: string; disableRecordingRules?: boolean; sigV4Auth?: boolean; + oauthPassThru?: boolean; } export type ExemplarTraceIdDestination = {