mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 18:46:40 -05:00
Fix resource endpoints to end with slash (#21540)
This commit is contained in:
@@ -280,8 +280,6 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
protected abstract loginAdal(tenant: Tenant, resource: Resource): Promise<{ response: OAuthTokenResponse | undefined, authComplete: Deferred<void, Error> }>;
|
protected abstract loginAdal(tenant: Tenant, resource: Resource): Promise<{ response: OAuthTokenResponse | undefined, authComplete: Deferred<void, Error> }>;
|
||||||
|
|
||||||
protected abstract loginMsal(tenant: Tenant, resource: Resource): Promise<{ response: AuthenticationResult | null, authComplete: Deferred<void, Error> }>;
|
protected abstract loginMsal(tenant: Tenant, resource: Resource): Promise<{ response: AuthenticationResult | null, authComplete: Deferred<void, Error> }>;
|
||||||
@@ -323,6 +321,9 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
Logger.error(`Error: Could not fetch the azure resource ${azureResource} `);
|
Logger.error(`Error: Could not fetch the azure resource ${azureResource} `);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
// Resource endpoint must end with '/' to form a valid scope for MSAL token request.
|
||||||
|
const endpoint = resource.endpoint.endsWith('/') ? resource.endpoint : resource.endpoint + '/';
|
||||||
|
|
||||||
let account: AccountInfo | null = await this.getAccountFromMsalCache(accountId);
|
let account: AccountInfo | null = await this.getAccountFromMsalCache(accountId);
|
||||||
if (!account) {
|
if (!account) {
|
||||||
Logger.error('Error: Could not fetch account when acquiring token');
|
Logger.error('Error: Could not fetch account when acquiring token');
|
||||||
@@ -330,9 +331,9 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
}
|
}
|
||||||
let newScope;
|
let newScope;
|
||||||
if (resource.azureResourceId === azdata.AzureResource.ResourceManagement) {
|
if (resource.azureResourceId === azdata.AzureResource.ResourceManagement) {
|
||||||
newScope = [`${resource?.endpoint}user_impersonation`];
|
newScope = [`${endpoint}user_impersonation`];
|
||||||
} else {
|
} else {
|
||||||
newScope = [`${resource?.endpoint}.default`];
|
newScope = [`${endpoint}.default`];
|
||||||
}
|
}
|
||||||
|
|
||||||
// construct request
|
// construct request
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ const publicAzureSettings: ProviderSettings = {
|
|||||||
},
|
},
|
||||||
graphResource: {
|
graphResource: {
|
||||||
id: SettingIds.graph,
|
id: SettingIds.graph,
|
||||||
endpoint: 'https://graph.windows.net',
|
endpoint: 'https://graph.windows.net/',
|
||||||
azureResourceId: AzureResource.Graph
|
azureResourceId: AzureResource.Graph
|
||||||
},
|
},
|
||||||
msGraphResource: {
|
msGraphResource: {
|
||||||
@@ -59,38 +59,38 @@ const publicAzureSettings: ProviderSettings = {
|
|||||||
},
|
},
|
||||||
ossRdbmsResource: {
|
ossRdbmsResource: {
|
||||||
id: SettingIds.ossrdbms,
|
id: SettingIds.ossrdbms,
|
||||||
endpoint: 'https://ossrdbms-aad.database.windows.net',
|
endpoint: 'https://ossrdbms-aad.database.windows.net/',
|
||||||
azureResourceId: AzureResource.OssRdbms
|
azureResourceId: AzureResource.OssRdbms
|
||||||
},
|
},
|
||||||
azureKeyVaultResource: {
|
azureKeyVaultResource: {
|
||||||
id: SettingIds.vault,
|
id: SettingIds.vault,
|
||||||
endpoint: 'https://vault.azure.net',
|
endpoint: 'https://vault.azure.net/',
|
||||||
azureResourceId: AzureResource.AzureKeyVault
|
azureResourceId: AzureResource.AzureKeyVault
|
||||||
},
|
},
|
||||||
azureDevOpsResource: {
|
azureDevOpsResource: {
|
||||||
id: SettingIds.ado,
|
id: SettingIds.ado,
|
||||||
endpoint: '499b84ac-1321-427f-aa17-267ca6975798',
|
endpoint: '499b84ac-1321-427f-aa17-267ca6975798/',
|
||||||
azureResourceId: AzureResource.AzureDevOps,
|
azureResourceId: AzureResource.AzureDevOps,
|
||||||
},
|
},
|
||||||
azureLogAnalyticsResource: {
|
azureLogAnalyticsResource: {
|
||||||
id: SettingIds.ala,
|
id: SettingIds.ala,
|
||||||
endpoint: 'https://api.loganalytics.io',
|
endpoint: 'https://api.loganalytics.io/',
|
||||||
azureResourceId: AzureResource.AzureLogAnalytics,
|
azureResourceId: AzureResource.AzureLogAnalytics,
|
||||||
},
|
},
|
||||||
azureStorageResource: {
|
azureStorageResource: {
|
||||||
id: SettingIds.storage,
|
id: SettingIds.storage,
|
||||||
endpoint: '',
|
endpoint: '',
|
||||||
endpointSuffix: '.core.windows.net',
|
endpointSuffix: '.core.windows.net/',
|
||||||
azureResourceId: AzureResource.AzureStorage
|
azureResourceId: AzureResource.AzureStorage
|
||||||
},
|
},
|
||||||
azureKustoResource: {
|
azureKustoResource: {
|
||||||
id: SettingIds.kusto,
|
id: SettingIds.kusto,
|
||||||
endpoint: 'https://kusto.kusto.windows.net',
|
endpoint: 'https://kusto.kusto.windows.net/',
|
||||||
azureResourceId: AzureResource.AzureKusto,
|
azureResourceId: AzureResource.AzureKusto,
|
||||||
},
|
},
|
||||||
powerBiResource: {
|
powerBiResource: {
|
||||||
id: SettingIds.powerbi,
|
id: SettingIds.powerbi,
|
||||||
endpoint: 'https://analysis.windows.net/powerbi/api',
|
endpoint: 'https://analysis.windows.net/powerbi/api/',
|
||||||
azureResourceId: AzureResource.PowerBi
|
azureResourceId: AzureResource.PowerBi
|
||||||
},
|
},
|
||||||
redirectUri: 'http://localhost',
|
redirectUri: 'http://localhost',
|
||||||
@@ -119,12 +119,12 @@ const usGovAzureSettings: ProviderSettings = {
|
|||||||
},
|
},
|
||||||
graphResource: {
|
graphResource: {
|
||||||
id: SettingIds.graph,
|
id: SettingIds.graph,
|
||||||
endpoint: 'https://graph.windows.net',
|
endpoint: 'https://graph.windows.net/',
|
||||||
azureResourceId: AzureResource.Graph
|
azureResourceId: AzureResource.Graph
|
||||||
},
|
},
|
||||||
armResource: {
|
armResource: {
|
||||||
id: SettingIds.arm,
|
id: SettingIds.arm,
|
||||||
endpoint: 'https://management.usgovcloudapi.net',
|
endpoint: 'https://management.usgovcloudapi.net/',
|
||||||
azureResourceId: AzureResource.ResourceManagement
|
azureResourceId: AzureResource.ResourceManagement
|
||||||
},
|
},
|
||||||
sqlResource: {
|
sqlResource: {
|
||||||
@@ -134,28 +134,28 @@ const usGovAzureSettings: ProviderSettings = {
|
|||||||
},
|
},
|
||||||
ossRdbmsResource: {
|
ossRdbmsResource: {
|
||||||
id: SettingIds.ossrdbms,
|
id: SettingIds.ossrdbms,
|
||||||
endpoint: 'https://ossrdbms-aad.database.usgovcloudapi.net',
|
endpoint: 'https://ossrdbms-aad.database.usgovcloudapi.net/',
|
||||||
azureResourceId: AzureResource.OssRdbms
|
azureResourceId: AzureResource.OssRdbms
|
||||||
},
|
},
|
||||||
azureKeyVaultResource: {
|
azureKeyVaultResource: {
|
||||||
id: SettingIds.vault,
|
id: SettingIds.vault,
|
||||||
endpoint: 'https://vault.usgovcloudapi.net',
|
endpoint: 'https://vault.usgovcloudapi.net/',
|
||||||
azureResourceId: AzureResource.AzureKeyVault
|
azureResourceId: AzureResource.AzureKeyVault
|
||||||
},
|
},
|
||||||
azureLogAnalyticsResource: {
|
azureLogAnalyticsResource: {
|
||||||
id: SettingIds.ala,
|
id: SettingIds.ala,
|
||||||
endpoint: 'https://api.loganalytics.us',
|
endpoint: 'https://api.loganalytics.us/',
|
||||||
azureResourceId: AzureResource.AzureLogAnalytics,
|
azureResourceId: AzureResource.AzureLogAnalytics,
|
||||||
},
|
},
|
||||||
azureStorageResource: {
|
azureStorageResource: {
|
||||||
id: SettingIds.storage,
|
id: SettingIds.storage,
|
||||||
endpoint: '',
|
endpoint: '',
|
||||||
endpointSuffix: '.core.usgovcloudapi.net',
|
endpointSuffix: '.core.usgovcloudapi.net/',
|
||||||
azureResourceId: AzureResource.AzureStorage
|
azureResourceId: AzureResource.AzureStorage
|
||||||
},
|
},
|
||||||
powerBiResource: {
|
powerBiResource: {
|
||||||
id: SettingIds.powerbi,
|
id: SettingIds.powerbi,
|
||||||
endpoint: 'https://analysis.windows.net/powerbi/api',
|
endpoint: 'https://analysis.windows.net/powerbi/api/',
|
||||||
azureResourceId: AzureResource.PowerBi
|
azureResourceId: AzureResource.PowerBi
|
||||||
},
|
},
|
||||||
redirectUri: 'http://localhost',
|
redirectUri: 'http://localhost',
|
||||||
@@ -183,7 +183,7 @@ const usNatAzureSettings: ProviderSettings = {
|
|||||||
},
|
},
|
||||||
graphResource: {
|
graphResource: {
|
||||||
id: SettingIds.graph,
|
id: SettingIds.graph,
|
||||||
endpoint: 'https://graph.eaglex.ic.gov',
|
endpoint: 'https://graph.eaglex.ic.gov/',
|
||||||
azureResourceId: AzureResource.Graph
|
azureResourceId: AzureResource.Graph
|
||||||
},
|
},
|
||||||
armResource: {
|
armResource: {
|
||||||
@@ -198,23 +198,23 @@ const usNatAzureSettings: ProviderSettings = {
|
|||||||
},
|
},
|
||||||
ossRdbmsResource: {
|
ossRdbmsResource: {
|
||||||
id: SettingIds.ossrdbms,
|
id: SettingIds.ossrdbms,
|
||||||
endpoint: 'https://ossrdbms-aad.database.cloudapi.eaglex.ic.gov',
|
endpoint: 'https://ossrdbms-aad.database.cloudapi.eaglex.ic.gov/',
|
||||||
azureResourceId: AzureResource.OssRdbms
|
azureResourceId: AzureResource.OssRdbms
|
||||||
},
|
},
|
||||||
azureKeyVaultResource: {
|
azureKeyVaultResource: {
|
||||||
id: SettingIds.vault,
|
id: SettingIds.vault,
|
||||||
endpoint: 'https://vault.cloudapi.eaglex.ic.gov',
|
endpoint: 'https://vault.cloudapi.eaglex.ic.gov/',
|
||||||
azureResourceId: AzureResource.AzureKeyVault
|
azureResourceId: AzureResource.AzureKeyVault
|
||||||
},
|
},
|
||||||
azureLogAnalyticsResource: {
|
azureLogAnalyticsResource: {
|
||||||
id: SettingIds.ala,
|
id: SettingIds.ala,
|
||||||
endpoint: 'https://api.loganalytics.azure.eaglex.ic.gov',
|
endpoint: 'https://api.loganalytics.azure.eaglex.ic.gov/',
|
||||||
azureResourceId: AzureResource.AzureLogAnalytics,
|
azureResourceId: AzureResource.AzureLogAnalytics,
|
||||||
},
|
},
|
||||||
azureStorageResource: {
|
azureStorageResource: {
|
||||||
id: SettingIds.storage,
|
id: SettingIds.storage,
|
||||||
endpoint: '',
|
endpoint: '',
|
||||||
endpointSuffix: '.core.eaglex.ic.gov',
|
endpointSuffix: '.core.eaglex.ic.gov/',
|
||||||
azureResourceId: AzureResource.AzureStorage
|
azureResourceId: AzureResource.AzureStorage
|
||||||
},
|
},
|
||||||
redirectUri: 'http://localhost',
|
redirectUri: 'http://localhost',
|
||||||
@@ -238,33 +238,33 @@ const germanyAzureSettings: ProviderSettings = {
|
|||||||
clientId: 'a69788c6-1d43-44ed-9ca3-b83e194da255',
|
clientId: 'a69788c6-1d43-44ed-9ca3-b83e194da255',
|
||||||
graphResource: {
|
graphResource: {
|
||||||
id: SettingIds.graph,
|
id: SettingIds.graph,
|
||||||
endpoint: 'https://graph.cloudapi.de',
|
endpoint: 'https://graph.cloudapi.de/',
|
||||||
azureResourceId: AzureResource.Graph
|
azureResourceId: AzureResource.Graph
|
||||||
},
|
},
|
||||||
msGraphResource: {
|
msGraphResource: {
|
||||||
id: SettingIds.msgraph,
|
id: SettingIds.msgraph,
|
||||||
endpoint: 'https://graph.microsoft.de',
|
endpoint: 'https://graph.microsoft.de/',
|
||||||
azureResourceId: AzureResource.MsGraph
|
azureResourceId: AzureResource.MsGraph
|
||||||
},
|
},
|
||||||
armResource: {
|
armResource: {
|
||||||
id: SettingIds.arm,
|
id: SettingIds.arm,
|
||||||
endpoint: 'https://management.microsoftazure.de',
|
endpoint: 'https://management.microsoftazure.de/',
|
||||||
azureResourceId: AzureResource.ResourceManagement
|
azureResourceId: AzureResource.ResourceManagement
|
||||||
},
|
},
|
||||||
azureKeyVaultResource: {
|
azureKeyVaultResource: {
|
||||||
id: SettingIds.vault,
|
id: SettingIds.vault,
|
||||||
endpoint: 'https://vault.microsoftazure.de',
|
endpoint: 'https://vault.microsoftazure.de/',
|
||||||
azureResourceId: AzureResource.AzureKeyVault
|
azureResourceId: AzureResource.AzureKeyVault
|
||||||
},
|
},
|
||||||
azureStorageResource: {
|
azureStorageResource: {
|
||||||
id: SettingIds.storage,
|
id: SettingIds.storage,
|
||||||
endpoint: '',
|
endpoint: '',
|
||||||
endpointSuffix: '.core.cloudapi.de',
|
endpointSuffix: '.core.cloudapi.de/',
|
||||||
azureResourceId: AzureResource.AzureStorage
|
azureResourceId: AzureResource.AzureStorage
|
||||||
},
|
},
|
||||||
powerBiResource: {
|
powerBiResource: {
|
||||||
id: SettingIds.powerbi,
|
id: SettingIds.powerbi,
|
||||||
endpoint: 'https://analysis.windows.net/powerbi/api',
|
endpoint: 'https://analysis.windows.net/powerbi/api/',
|
||||||
azureResourceId: AzureResource.PowerBi
|
azureResourceId: AzureResource.PowerBi
|
||||||
},
|
},
|
||||||
redirectUri: 'http://localhost',
|
redirectUri: 'http://localhost',
|
||||||
|
|||||||
Reference in New Issue
Block a user