Compare commits

..

3 Commits

4 changed files with 21 additions and 17 deletions

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "@slawek/sk-az-tools", "name": "@slawek/sk-az-tools",
"version": "0.7.2", "version": "0.7.3",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@slawek/sk-az-tools", "name": "@slawek/sk-az-tools",
"version": "0.7.2", "version": "0.7.3",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@azure/identity": "^4.13.0", "@azure/identity": "^4.13.0",

View File

@@ -1,6 +1,6 @@
{ {
"name": "@slawek/sk-az-tools", "name": "@slawek/sk-az-tools",
"version": "0.7.2", "version": "0.7.3",
"type": "module", "type": "module",
"files": [ "files": [
"dist", "dist",

View File

@@ -32,14 +32,15 @@ export function getMsalAuthProvider(
}; };
} }
export function getAzureIdentityAuthProvider( export function getAzureIdentityAuthProvider(tenantId?: string, clientId?: string) : GraphAuthProvider {
tenantId: string, const credentialOptions =
clientId: string, tenantId && clientId
) { ? { tenantId, managedIdentityClientId: clientId }
const credential = new DefaultAzureCredential({ : undefined;
tenantId,
managedIdentityClientId: clientId, const credential = credentialOptions
}); ? new DefaultAzureCredential(credentialOptions)
: new DefaultAzureCredential();
const getBearerToken = getBearerTokenProvider( const getBearerToken = getBearerTokenProvider(
credential, credential,

View File

@@ -5,18 +5,21 @@ export * from "./app.ts";
export * from "./sp.ts"; export * from "./sp.ts";
import { loadAuthConfig, loadConfig } from "../index.ts"; import { loadAuthConfig, loadConfig } from "../index.ts";
import { Client } from "@microsoft/microsoft-graph-client"; import { Client, AuthProvider } from "@microsoft/microsoft-graph-client";
import { getMsalAuthProvider, getAzureIdentityAuthProvider } from "./auth.ts"; import { getMsalAuthProvider, getAzureIdentityAuthProvider } from "./auth.ts";
export async function getGraphClient(): Promise<Client> { export async function getGraphClient(): Promise<Client> {
const config = await loadConfig(); const config = await loadConfig();
const authConfig = await loadAuthConfig("public-config"); let authProvider: AuthProvider;
const authProvider =
config.authMode === "azure-identity" if (config.authMode === "azure-identity") {
? getAzureIdentityAuthProvider(authConfig.tenantId, authConfig.clientId) authProvider = getAzureIdentityAuthProvider();
: getMsalAuthProvider(authConfig.tenantId, authConfig.clientId); } else {
const authConfig = await loadAuthConfig("public-config");
authProvider = getMsalAuthProvider(authConfig.tenantId, authConfig.clientId);
}
return Client.init({ return Client.init({
authProvider: authProvider, authProvider: authProvider,