mirror of
https://github.com/bitwarden/directory-connector
synced 2026-01-09 03:53:33 +00:00
Add Azure Identity Authority Selector (#176)
* New AzureSettings to select the Identity Authority * Add fallback for existing customers * Throw error if Identity Authority is set to invalid value
This commit is contained in:
committed by
GitHub
parent
660ee538ce
commit
abc68e8ef9
@@ -17,6 +17,9 @@ import { IDirectoryService } from './directory.service';
|
||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||
|
||||
const AzurePublicIdentityAuhtority = 'login.microsoftonline.com';
|
||||
const AzureGovermentIdentityAuhtority = 'login.microsoftonline.us';
|
||||
|
||||
const NextLink = '@odata.nextLink';
|
||||
const DeltaLink = '@odata.deltaLink';
|
||||
const ObjectType = '@odata.type';
|
||||
@@ -390,6 +393,12 @@ export class AzureDirectoryService extends BaseDirectoryService implements IDire
|
||||
return;
|
||||
}
|
||||
|
||||
const identityAuthority = this.dirConfig.identityAuthority != null ? this.dirConfig.identityAuthority : AzurePublicIdentityAuhtority;
|
||||
if (identityAuthority !== AzurePublicIdentityAuhtority && identityAuthority !== AzureGovermentIdentityAuhtority) {
|
||||
done(new Error(this.i18nService.t('dirConfigIncomplete')), null);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.accessTokenIsExpired()) {
|
||||
done(null, this.accessToken);
|
||||
return;
|
||||
@@ -406,7 +415,7 @@ export class AzureDirectoryService extends BaseDirectoryService implements IDire
|
||||
});
|
||||
|
||||
const req = https.request({
|
||||
host: 'login.microsoftonline.com',
|
||||
host: identityAuthority,
|
||||
path: '/' + this.dirConfig.tenant + '/oauth2/v2.0/token',
|
||||
method: 'POST',
|
||||
headers: {
|
||||
|
||||
Reference in New Issue
Block a user