@microsoft/teams.apps 2.0.2 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -13,14 +13,14 @@
13
13
  <a href="https://www.npmjs.com/package/@microsoft/teams.apps" target="_blank">
14
14
  <img src="https://img.shields.io/npm/dw/@microsoft/teams.apps" />
15
15
  </a>
16
- <a href="https://microsoft.github.io/teams-ai" target="_blank">
16
+ <a href="https://microsoft.github.io/teams-sdk" target="_blank">
17
17
  <img src="https://img.shields.io/badge/📖 docs-open-blue" />
18
18
  </a>
19
19
  </p>
20
20
 
21
21
  A package used to create apps/bots that can send/receive activities.
22
22
 
23
- <a href="https://microsoft.github.io/teams-ai" target="_blank">
23
+ <a href="https://microsoft.github.io/teams-sdk" target="_blank">
24
24
  <img src="https://img.shields.io/badge/📖 Getting Started-blue?style=for-the-badge" />
25
25
  </a>
26
26
 
@@ -32,4 +32,4 @@ $: npm install @microsoft/teams.apps
32
32
 
33
33
  ## Dependencies
34
34
 
35
- - [`express`](https://www.npmjs.com/package/express)
35
+ - [`express`](https://www.npmjs.com/package/express)
package/dist/app.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ActivityLike, ChannelID, ConversationReference, Credentials, IToken, StripMentionsTextOptions } from '@microsoft/teams.api';
1
+ import { ActivityLike, ApiClientSettings, ChannelID, ConversationReference, StripMentionsTextOptions, TokenCredentials } from '@microsoft/teams.api';
2
2
  import { EventEmitter } from '@microsoft/teams.common/events';
3
3
  import * as http from '@microsoft/teams.common/http';
4
4
  import { ILogger } from '@microsoft/teams.common/logging';
@@ -16,12 +16,46 @@ import * as middleware from './middleware';
16
16
  import { OAuthSettings } from './oauth';
17
17
  import { HttpPlugin } from './plugins';
18
18
  import { Router } from './router';
19
- import { AppEvents, IPlugin } from './types';
19
+ import { TokenManager } from './token-manager';
20
+ import { IPlugin, AppEvents } from './types';
20
21
  import { PluginAdditionalContext } from './types/app-routing';
21
22
  /**
22
23
  * App initialization options
23
24
  */
24
- export type AppOptions<TPlugin extends IPlugin> = Partial<Credentials> & {
25
+ export type AppOptions<TPlugin extends IPlugin> = {
26
+ /**
27
+ * client id - Your application's client identifier
28
+ * Uses environment variable CLIENT_ID if not explicitly provided
29
+ */
30
+ readonly clientId?: string;
31
+ /**
32
+ * client secret - Your application's secret to be able to send messages
33
+ * as your bot.
34
+ * Uses environment variable CLIENT_SECRET if not explicitly provided
35
+ * If not available, uses ManagedIdentity to authenticate
36
+ */
37
+ readonly clientSecret?: string;
38
+ /**
39
+ * tenantId - The tenantId where your app is registered
40
+ * Uses environment variable TENANT_ID if not explicitly provided
41
+ * If your app has MultiTenant auth enabled (this value should not be provided).
42
+ * (Note: That MultiTenant auth has been deprecated, so only legacy apps will have this
43
+ * value enabled)
44
+ */
45
+ readonly tenantId?: string;
46
+ /**
47
+ * token - An override to perform token fetching.
48
+ */
49
+ readonly token?: TokenCredentials['token'];
50
+ /**
51
+ * managed identity client id - A managed identity client id.
52
+ * Uses environment variable MANAGED_IDENTITY_CLIENT_ID if not explicitly provided
53
+ * If:
54
+ * - Same as client id, uses User Managed Identity for auth
55
+ * - "system", uses System Managed Identity in a Federated Identity Credentials
56
+ * - Different from client id or system, uses UMI in a Federated Identity Credentials
57
+ */
58
+ managedIdentityClientId?: 'system' | (string & {});
25
59
  /**
26
60
  * http client or client options used to make api requests
27
61
  */
@@ -54,6 +88,10 @@ export type AppOptions<TPlugin extends IPlugin> = Partial<Credentials> & {
54
88
  * Skip authentication for HTTP requests
55
89
  */
56
90
  readonly skipAuth?: boolean;
91
+ /**
92
+ * API client settings used for overriding.
93
+ */
94
+ readonly apiClientSettings?: ApiClientSettings;
57
95
  };
58
96
  export type AppActivityOptions = {
59
97
  readonly mentions?: {
@@ -64,16 +102,6 @@ export type AppActivityOptions = {
64
102
  readonly stripText?: boolean | StripMentionsTextOptions;
65
103
  };
66
104
  };
67
- export type AppTokens = {
68
- /**
69
- * bot token used to send activities
70
- */
71
- bot?: IToken;
72
- /**
73
- * graph token used to query the graph api
74
- */
75
- graph?: IToken;
76
- };
77
105
  /**
78
106
  * The orchestrator for receiving/sending activities
79
107
  */
@@ -85,14 +113,19 @@ export declare class App<TPlugin extends IPlugin = IPlugin> {
85
113
  readonly http: HttpPlugin;
86
114
  readonly client: http.Client;
87
115
  readonly storage: IStorage;
88
- readonly credentials?: Credentials;
89
116
  readonly entraTokenValidator?: middleware.JwtValidator;
117
+ readonly tokenManager: TokenManager;
118
+ /**
119
+ * the apps credentials
120
+ */
121
+ get credentials(): import("@microsoft/teams.api").Credentials | undefined;
90
122
  /**
91
123
  * the apps id
92
124
  */
93
125
  get id(): string | undefined;
94
126
  /**
95
127
  * the apps name
128
+ * @deprecated Name will be removed in the near future. Please remove dependencies from it.
96
129
  */
97
130
  get name(): string | undefined;
98
131
  get oauth(): {
@@ -103,11 +136,6 @@ export declare class App<TPlugin extends IPlugin = IPlugin> {
103
136
  */
104
137
  get manifest(): Partial<manifest.Manifest>;
105
138
  protected readonly _manifest: Partial<manifest.Manifest>;
106
- /**
107
- * the apps auth tokens
108
- */
109
- get tokens(): AppTokens;
110
- protected _tokens: AppTokens;
111
139
  protected container: Container;
112
140
  protected plugins: Array<TPlugin>;
113
141
  protected router: Router<PluginAdditionalContext<TPlugin>>;
@@ -1132,12 +1160,7 @@ export declare class App<TPlugin extends IPlugin = IPlugin> {
1132
1160
  protected onActivity: typeof onActivity;
1133
1161
  protected onActivitySent: typeof onActivitySent;
1134
1162
  protected onActivityResponse: typeof onActivityResponse;
1135
- /**
1136
- * Refresh the tokens for the app
1137
- */
1138
- protected refreshTokens(force?: boolean): Promise<[void, void]>;
1139
- protected refreshBotToken(force?: boolean): Promise<void>;
1140
- protected refreshGraphToken(force?: boolean): Promise<void>;
1163
+ protected getBotToken(): Promise<import("@microsoft/teams.api").IToken | null | undefined>;
1141
1164
  protected getUserToken(channelId: ChannelID, userId: string): Promise<string>;
1142
- protected getOrRefreshTenantToken(tenantId: string): Promise<string | undefined>;
1165
+ protected getAppGraphToken(tenantId?: string): Promise<import("@microsoft/teams.api").IToken | null | undefined>;
1143
1166
  }
package/dist/app.js CHANGED
@@ -56,6 +56,7 @@ const middleware = __importStar(require("./middleware"));
56
56
  const oauth_1 = require("./oauth");
57
57
  const plugins_1 = require("./plugins");
58
58
  const router_1 = require("./router");
59
+ const token_manager_1 = require("./token-manager");
59
60
  /**
60
61
  * The orchestrator for receiving/sending activities
61
62
  */
@@ -67,19 +68,26 @@ class App {
67
68
  http;
68
69
  client;
69
70
  storage;
70
- credentials;
71
71
  entraTokenValidator;
72
+ tokenManager;
73
+ /**
74
+ * the apps credentials
75
+ */
76
+ get credentials() {
77
+ return this.tokenManager.credentials;
78
+ }
72
79
  /**
73
80
  * the apps id
74
81
  */
75
82
  get id() {
76
- return this.tokens.bot?.appId || this.tokens.graph?.appId;
83
+ return this.credentials?.clientId;
77
84
  }
78
85
  /**
79
86
  * the apps name
87
+ * @deprecated Name will be removed in the near future. Please remove dependencies from it.
80
88
  */
81
89
  get name() {
82
- return this.tokens.bot?.appDisplayName || this.tokens.graph?.appDisplayName;
90
+ return this._manifest.name?.full;
83
91
  }
84
92
  get oauth() {
85
93
  return {
@@ -94,9 +102,8 @@ class App {
94
102
  return {
95
103
  id: this.id,
96
104
  name: {
97
- short: this.name || '??',
98
- full: this.name || '??',
99
- ...this._manifest.name,
105
+ short: this._manifest.name?.short || '??',
106
+ full: this._manifest.name?.full || '??',
100
107
  },
101
108
  bots: [
102
109
  {
@@ -113,13 +120,6 @@ class App {
113
120
  };
114
121
  }
115
122
  _manifest;
116
- /**
117
- * the apps auth tokens
118
- */
119
- get tokens() {
120
- return this._tokens;
121
- }
122
- _tokens = {};
123
123
  container = new container_1.Container();
124
124
  plugins = [];
125
125
  router = new router_1.Router();
@@ -163,32 +163,18 @@ class App {
163
163
  },
164
164
  });
165
165
  }
166
- this.api = new api_1.ApiClient('https://smba.trafficmanager.net/teams', this.client.clone({ token: () => this._tokens.bot }));
167
- this.graph = new api_1.GraphClient(this.client.clone({ token: () => this._tokens.graph }));
168
- // initialize credentials
169
- const clientId = this.options.clientId || process.env.CLIENT_ID;
170
- const clientSecret = ('clientSecret' in this.options
171
- ? this.options.clientSecret
172
- : undefined) || process.env.CLIENT_SECRET;
173
- const tenantId = ('tenantId' in this.options ? this.options.tenantId : undefined) ||
174
- process.env.TENANT_ID;
175
- const token = 'token' in this.options ? this.options.token : undefined;
176
- if (clientId && clientSecret) {
177
- this.credentials = {
178
- clientId,
179
- clientSecret,
180
- tenantId,
181
- };
182
- }
183
- if (clientId && token) {
184
- this.credentials = {
185
- clientId,
186
- tenantId,
187
- token,
188
- };
189
- }
190
- if (clientId) {
191
- this.entraTokenValidator = middleware.createEntraTokenValidator(tenantId || 'common', clientId, { logger: this.log, });
166
+ this.api = new api_1.ApiClient('https://smba.trafficmanager.net/teams', this.client.clone({ token: () => this.getBotToken() }), this.options.apiClientSettings);
167
+ this.graph = new api_1.GraphClient(this.client.clone({ token: () => this.getAppGraphToken() }));
168
+ // initialize TokenManager with credentials
169
+ this.tokenManager = new token_manager_1.TokenManager({
170
+ clientId: this.options.clientId,
171
+ clientSecret: this.options.clientSecret,
172
+ tenantId: this.options.tenantId,
173
+ token: this.options.token,
174
+ managedIdentityClientId: this.options.managedIdentityClientId,
175
+ }, this.log);
176
+ if (this.credentials?.clientId) {
177
+ this.entraTokenValidator = middleware.createEntraTokenValidator(this.credentials.tenantId || 'common', this.credentials.clientId, { logger: this.log, });
192
178
  }
193
179
  // add/validate plugins
194
180
  const plugins = this.options.plugins || [];
@@ -211,10 +197,7 @@ class App {
211
197
  this.container.register('name', { useValue: this.name });
212
198
  this.container.register('manifest', { useValue: this.manifest });
213
199
  this.container.register('credentials', { useValue: this.credentials });
214
- this.container.register('botToken', { useValue: () => this.tokens.bot });
215
- this.container.register('graphToken', {
216
- useValue: () => this.tokens.graph,
217
- });
200
+ this.container.register('botToken', { useValue: () => this.getBotToken() });
218
201
  this.container.register('ILogger', { useValue: this.log });
219
202
  this.container.register('IStorage', { useValue: this.storage });
220
203
  this.container.register(this.client.constructor.name, {
@@ -255,7 +238,6 @@ class App {
255
238
  async start(port) {
256
239
  this.port = port || process.env.PORT || 3978;
257
240
  try {
258
- await this.refreshTokens(true);
259
241
  // initialize plugins
260
242
  for (const plugin of this.plugins) {
261
243
  // inject dependencies
@@ -392,36 +374,10 @@ class App {
392
374
  ///
393
375
  /// Token
394
376
  ///
395
- /**
396
- * Refresh the tokens for the app
397
- */
398
- async refreshTokens(force = false) {
399
- return Promise.all([
400
- this.refreshBotToken(force),
401
- this.refreshGraphToken(force),
402
- ]);
403
- }
404
- async refreshBotToken(force = false) {
405
- if (!this.credentials)
406
- return;
407
- if (!this.tokens.bot?.isExpired() && !force)
408
- return;
409
- if (this.tokens.bot) {
410
- this.log.debug('refreshing bot token');
411
- }
412
- const botResponse = await this.api.bots.token.get(this.credentials);
413
- this._tokens.bot = new teams_api_1.JsonWebToken(botResponse.access_token);
414
- }
415
- async refreshGraphToken(force = false) {
416
- if (!this.credentials)
377
+ async getBotToken() {
378
+ if (!this.tokenManager)
417
379
  return;
418
- if (!this.tokens.graph?.isExpired() && !force)
419
- return;
420
- if (this.tokens.graph) {
421
- this.log.debug('refreshing graph token');
422
- }
423
- const graphResponse = await this.api.bots.token.getGraph(this.credentials);
424
- this._tokens.graph = new teams_api_1.JsonWebToken(graphResponse.access_token);
380
+ return await this.tokenManager.getBotToken();
425
381
  }
426
382
  async getUserToken(channelId, userId) {
427
383
  const res = await this.api.users.token.get({
@@ -431,19 +387,11 @@ class App {
431
387
  });
432
388
  return res.token;
433
389
  }
434
- async getOrRefreshTenantToken(tenantId) {
435
- let appToken = this.tenantTokens.get(tenantId);
436
- if (this.credentials && !this.tenantTokens.get(tenantId)) {
437
- const { access_token } = await this.api.bots.token.getGraph({
438
- ...this.credentials,
439
- tenantId: tenantId,
440
- });
441
- this.log.debug(`refreshing tenant token for ${tenantId}`);
442
- appToken = access_token;
443
- this.tenantTokens.set(tenantId, access_token);
444
- }
445
- return appToken;
390
+ async getAppGraphToken(tenantId) {
391
+ if (!this.tokenManager)
392
+ return;
393
+ return await this.tokenManager.getGraphToken(tenantId);
446
394
  }
447
395
  }
448
396
  exports.App = App;
449
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpQ0FBbUM7QUFFbkMsb0RBUzhCO0FBQzlCLDJEQUE4RDtBQUM5RCxtRUFBcUQ7QUFDckQsNkRBQXlFO0FBQ3pFLDZEQUF5RTtBQUV6RSxtRUFBa0M7QUFFbEMsK0JBQStDO0FBRS9DLDJDQUFtRDtBQUNuRCw2Q0FNc0I7QUFDdEIsMkNBR3FCO0FBQ3JCLCtDQUF1RTtBQUN2RSwrQ0FBeUM7QUFDekMsK0NBQWlEO0FBQ2pELDJDQUF3QztBQUV4Qyx5REFBMkM7QUFDM0MsbUNBQWdFO0FBQ2hFLHVDQUF1QztBQUN2QyxxQ0FBa0M7QUF1RWxDOztHQUVHO0FBQ0gsTUFBYSxHQUFHO0lBNkVPO0lBNUVaLEdBQUcsQ0FBWTtJQUNmLEtBQUssQ0FBYztJQUNuQixHQUFHLENBQVU7SUFDYixJQUFJLENBQWE7SUFDakIsTUFBTSxDQUFjO0lBQ3BCLE9BQU8sQ0FBVztJQUNsQixXQUFXLENBQWU7SUFDMUIsbUJBQW1CLENBQTJCO0lBRXZEOztPQUVHO0lBQ0gsSUFBSSxFQUFFO1FBQ0osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBQzVELENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsY0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLGNBQWMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTztZQUNMLEdBQUcsOEJBQXNCO1lBQ3pCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO1NBQ3RCLENBQUM7SUFDSixDQUFDO0lB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
397
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpQ0FBbUM7QUFFbkMsb0RBUThCO0FBQzlCLDJEQUE4RDtBQUM5RCxtRUFBcUQ7QUFDckQsNkRBQXlFO0FBQ3pFLDZEQUF5RTtBQUV6RSxtRUFBa0M7QUFFbEMsK0JBQStDO0FBRS9DLDJDQUFtRDtBQUNuRCw2Q0FNc0I7QUFDdEIsMkNBR3FCO0FBQ3JCLCtDQUF1RTtBQUN2RSwrQ0FBeUM7QUFDekMsK0NBQWlEO0FBQ2pELDJDQUF3QztBQUV4Qyx5REFBMkM7QUFDM0MsbUNBQWdFO0FBQ2hFLHVDQUF1QztBQUN2QyxxQ0FBa0M7QUFDbEMsbURBQStDO0FBc0cvQzs7R0FFRztBQUNILE1BQWEsR0FBRztJQTRFTztJQTNFWixHQUFHLENBQVk7SUFDZixLQUFLLENBQWM7SUFDbkIsR0FBRyxDQUFVO0lBQ2IsSUFBSSxDQUFhO0lBQ2pCLE1BQU0sQ0FBYztJQUNwQixPQUFPLENBQVc7SUFDbEIsbUJBQW1CLENBQTJCO0lBQzlDLFlBQVksQ0FBZTtJQUVwQzs7T0FFRztJQUNILElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUM7SUFDdkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxFQUFFO1FBQ0osT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU87WUFDTCxHQUFHLDhCQUFzQjtZQUN6QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSztTQUN0QixDQUFDO0lBQ0osQ0FBQztJ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
@@ -16,7 +16,6 @@ async function $process(sender, event) {
16
16
  if (serviceUrl.endsWith('/')) {
17
17
  serviceUrl = serviceUrl.slice(0, serviceUrl.length - 1);
18
18
  }
19
- await this.refreshTokens();
20
19
  let userToken;
21
20
  try {
22
21
  userToken = await this.getUserToken(activity.channelId, activity.from.id);
@@ -24,17 +23,10 @@ async function $process(sender, event) {
24
23
  catch (err) {
25
24
  // noop
26
25
  }
27
- let appToken;
28
- try {
29
- appToken = await this.getOrRefreshTenantToken(activity.conversation.tenantId ?? 'common');
30
- }
31
- catch (err) {
32
- // noop
33
- }
34
26
  const client = this.client.clone();
35
- const apiClient = new api_1.ApiClient(serviceUrl, this.client.clone({ token: () => this.tokens.bot }));
27
+ const apiClient = new api_1.ApiClient(serviceUrl, this.client.clone({ token: () => this.getBotToken() }), this.options.apiClientSettings);
36
28
  const userGraph = new api_1.GraphClient(client.clone({ token: () => userToken }));
37
- const appGraph = new api_1.GraphClient(client.clone({ token: () => appToken }));
29
+ const appGraph = new api_1.GraphClient(client.clone({ token: () => this.getAppGraphToken(activity.conversation.tenantId ?? 'common') }));
38
30
  const ref = {
39
31
  serviceUrl,
40
32
  activityId: activity.id,
@@ -91,7 +83,6 @@ async function $process(sender, event) {
91
83
  appGraph,
92
84
  appId: this.id || '',
93
85
  log: this.log,
94
- tokens: this.tokens,
95
86
  userToken: userToken,
96
87
  ref,
97
88
  storage: this.storage,
@@ -149,4 +140,4 @@ async function $process(sender, event) {
149
140
  });
150
141
  }
151
142
  }
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnByb2Nlc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXBwLnByb2Nlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFhQSw0QkFnTEM7QUE3TEQsb0RBQTZGO0FBRTdGLCtCQUErQztBQUUvQyx5Q0FBK0Q7QUFJL0Q7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxRQUFRLENBRTVCLE1BQWUsRUFDZixLQUFxQjtJQUVyQixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssQ0FBQztJQUVsQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FDWixZQUFZLFFBQVEsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDcEYsQ0FBQztJQUVGLElBQUksVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUV6RCxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUM3QixVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFFM0IsSUFBSSxTQUE2QixDQUFDO0lBRWxDLElBQUksQ0FBQztRQUNILFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsT0FBTztJQUNULENBQUM7SUFHRCxJQUFJLFFBQTRCLENBQUM7SUFDakMsSUFBSSxDQUFDO1FB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
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLnByb2Nlc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXBwLnByb2Nlc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFhQSw0QkFxS0M7QUFsTEQsb0RBQTZGO0FBRTdGLCtCQUErQztBQUUvQyx5Q0FBK0Q7QUFJL0Q7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxRQUFRLENBRTVCLE1BQWUsRUFDZixLQUFxQjtJQUVyQixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEtBQUssQ0FBQztJQUVsQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FDWixZQUFZLFFBQVEsQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDcEYsQ0FBQztJQUVGLElBQUksVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUV6RCxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUM3QixVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsSUFBSSxTQUE2QixDQUFDO0lBRWxDLElBQUksQ0FBQztRQUNILFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsT0FBTztJQUNULENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ25DLE1BQU0sU0FBUyxHQUFH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
@@ -36,6 +36,7 @@ describe('ActivityContext', () => {
36
36
  info: jest.fn(),
37
37
  warn: jest.fn(),
38
38
  error: jest.fn(),
39
+ trace: jest.fn(),
39
40
  log: jest.fn(),
40
41
  };
41
42
  mockLogger = {
@@ -247,4 +248,4 @@ describe('ActivityContext', () => {
247
248
  });
248
249
  });
249
250
  });
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0cy9hY3Rpdml0eS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsb0RBTzhCO0FBTzlCLHlDQUE2QztBQUU3QyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO0lBQy9CLElBQUksVUFBbUIsQ0FBQztJQUN4QixJQUFJLGFBQXNDLENBQUM7SUFDM0MsSUFBSSxVQUFtQixDQUFDO0lBQ3hCLElBQUksV0FBbUMsQ0FBQztJQUN4QyxJQUFJLE9BQThCLENBQUM7SUFDbkMsSUFBSSxPQUF3QixDQUFDO0lBRTdCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxVQUFVLEdBQUc7WUFDWCxZQUFZLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUM3RCxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtTQUNoQixDQUFDO1FBRUYsYUFBYSxHQUFHO1lBQ2QsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRTtvQkFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtvQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtpQkFDbkI7YUFDRjtZQUNELGFBQWEsRUFBRTtnQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTthQUNsQjtZQUNELElBQUksRUFBRTtnQkFDSixNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUU7aUJBQ3ZCO2FBQ0Y7U0FDb0MsQ0FBQztRQUV4QyxXQUFXLEdBQUcsRUFBNEIsQ0FBQztRQUMzQyxNQUFNLGFBQWEsR0FBRztZQUNwQixLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUs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
251
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0cy9hY3Rpdml0eS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUEsb0RBTzhCO0FBTzlCLHlDQUE2QztBQUU3QyxRQUFRLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO0lBQy9CLElBQUksVUFBbUIsQ0FBQztJQUN4QixJQUFJLGFBQXNDLENBQUM7SUFDM0MsSUFBSSxVQUFtQixDQUFDO0lBQ3hCLElBQUksV0FBbUMsQ0FBQztJQUN4QyxJQUFJLE9BQThCLENBQUM7SUFDbkMsSUFBSSxPQUF3QixDQUFDO0lBRTdCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxVQUFVLEdBQUc7WUFDWCxZQUFZLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUM3RCxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtTQUNoQixDQUFDO1FBRUYsYUFBYSxHQUFHO1lBQ2QsS0FBSyxFQUFFO2dCQUNMLEtBQUssRUFBRTtvQkFDTCxHQUFHLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtvQkFDZCxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtpQkFDbkI7YUFDRjtZQUNELGFBQWEsRUFBRTtnQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTthQUNsQjtZQUNELElBQUksRUFBRTtnQkFDSixNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUU7aUJBQ3ZCO2FBQ0Y7U0FDb0MsQ0FBQztRQUV4QyxXQUFXLEdBQUcsRUFBNEIsQ0FBQztRQUMzQyxNQUFNLGFBQWEsR0FBRztZQUNwQixLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNoQixJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUs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
package/dist/oauth.js CHANGED
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_OAUTH_SETTINGS = void 0;
4
4
  exports.DEFAULT_OAUTH_SETTINGS = {
5
- defaultConnectionName: 'graph',
5
+ defaultConnectionName: 'graph'
6
6
  };
7
7
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvb2F1dGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBU2EsUUFBQSxzQkFBc0IsR0FBNEI7SUFDN0QscUJBQXFCLEVBQUUsT0FBTztDQUMvQixDQUFDIn0=
@@ -16,7 +16,6 @@ export declare class HttpPlugin implements ISender {
16
16
  readonly manifest: Partial<Manifest>;
17
17
  readonly credentials?: Credentials;
18
18
  readonly botToken?: () => IToken;
19
- readonly graphToken?: () => IToken;
20
19
  readonly $onError: (event: IErrorEvent) => void;
21
20
  readonly $onActivity: (event: IActivityEvent) => void;
22
21
  readonly get: express.Application['get'];
@@ -64,7 +64,6 @@ let HttpPlugin = class HttpPlugin {
64
64
  manifest;
65
65
  credentials;
66
66
  botToken;
67
- graphToken;
68
67
  $onError;
69
68
  $onActivity;
70
69
  get;
@@ -234,10 +233,6 @@ __decorate([
234
233
  (0, types_1.Dependency)({ optional: true }),
235
234
  __metadata("design:type", Function)
236
235
  ], HttpPlugin.prototype, "botToken", void 0);
237
- __decorate([
238
- (0, types_1.Dependency)({ optional: true }),
239
- __metadata("design:type", Function)
240
- ], HttpPlugin.prototype, "graphToken", void 0);
241
236
  __decorate([
242
237
  (0, types_1.Event)('error'),
243
238
  __metadata("design:type", Function)
@@ -254,4 +249,4 @@ exports.HttpPlugin = HttpPlugin = __decorate([
254
249
  }),
255
250
  __metadata("design:paramtypes", [http_1.default.Server, Object])
256
251
  ], HttpPlugin);
257
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsdWdpbnMvaHR0cC9wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQXdCO0FBRXhCLGdEQUF3QjtBQUN4QixzREFBOEI7QUFFOUIsb0RBTzhCO0FBRzlCLG9FQUFzRDtBQUV0RCx5RUFBd0M7QUFHeEMsMEZBQW9HO0FBQ3BHLHVDQVVxQjtBQUdyQixxQ0FBc0M7QUFFdEM7O0dBRUc7QUFNSSxJQUFNLFVBQVUsR0FBaEIsTUFBTSxVQUFVO0lBRVosTUFBTSxDQUFXO0lBR2pCLE1BQU0sQ0FBZ0I7SUFHdEIsUUFBUSxDQUFxQjtJQUc3QixXQUFXLENBQWU7SUFHMUIsUUFBUSxDQUFnQjtJQUd4QixVQUFVLENBQWdCO0lBRzFCLFFBQVEsQ0FBZ0M7SUFHeEMsV0FBVyxDQUFtQztJQUU5QyxHQUFHLENBQTZCO0lBQ2hDLElBQUksQ0FBOEI7SUFDbEMsS0FBSyxDQUErQjtJQUNwQyxHQUFHLENBQTZCO0lBQ2hDLE1BQU0sQ0FBZ0M7SUFDdEMsS0FBSyxDQUErQjtJQUNwQyxHQUFHLENBQTZCO0lBRXpDLElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ1MsT0FBTyxDQUFjO0lBRS9CLElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBQ1MsS0FBSyxDQUFtQjtJQUV4QixPQUFPLENBQXNCO0lBQzdCLE9BQU8sR0FBcUMsRUFBRSxDQUFDO0lBQy9DLFFBQVEsQ0FBVTtJQUU1QixZQUFZLE1BQW9CLEVBQUUsT0FBZ0M7UUFDaEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLEVBQUUsUUFBUSxJQUFJLEtBQUssQ0FBQztRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUEs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
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsdWdpbnMvaHR0cC9wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQXdCO0FBRXhCLGdEQUF3QjtBQUN4QixzREFBOEI7QUFFOUIsb0RBTzhCO0FBRzlCLG9FQUFzRDtBQUV0RCx5RUFBd0M7QUFHeEMsMEZBQW9HO0FBQ3BHLHVDQVVxQjtBQUdyQixxQ0FBc0M7QUFFdEM7O0dBRUc7QUFNSSxJQUFNLFVBQVUsR0FBaEIsTUFBTSxVQUFVO0lBRVosTUFBTSxDQUFXO0lBR2pCLE1BQU0sQ0FBZ0I7SUFHdEIsUUFBUSxDQUFxQjtJQUc3QixXQUFXLENBQWU7SUFHMUIsUUFBUSxDQUFnQjtJQUd4QixRQUFRLENBQWdDO0lBR3hDLFdBQVcsQ0FBbUM7SUFFOUMsR0FBRyxDQUE2QjtJQUNoQyxJQUFJLENBQThCO0lBQ2xDLEtBQUssQ0FBK0I7SUFDcEMsR0FBRyxDQUE2QjtJQUNoQyxNQUFNLENBQWdDO0lBQ3RDLEtBQUssQ0FBK0I7SUFDcEMsR0FBRyxDQUE2QjtJQUV6QyxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUNTLE9BQU8sQ0FBYztJQUUvQixJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNTLEtBQUssQ0FBbUI7SUFFeEIsT0FBTyxDQUFzQjtJQUM3QixPQUFPLEdBQXFDLEVBQUUsQ0FBQztJQUMvQyxRQUFRLENBQVU7SUFFNUIsWUFBWSxNQUFvQixFQUFFLE9BQWdDO1FBQ2hFLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxFQUFFLFFBQVEsSUFBSSxLQUFLLENBQUM7UUFDM0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFBLGlCQUFPLEdBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sSUFBSSxjQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBQSxjQUFJLEdBQUUsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxpQkFBTyxDQUFDLElBQUksRUFBRSxDQUFD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
@@ -0,0 +1,30 @@
1
+ import { Credentials, IToken, TokenCredentials } from '@microsoft/teams.api';
2
+ import { ILogger } from '@microsoft/teams.common';
3
+ export type TokenManagerOptions = {
4
+ readonly clientId?: string;
5
+ readonly clientSecret?: string;
6
+ readonly tenantId?: string;
7
+ readonly token?: TokenCredentials['token'];
8
+ managedIdentityClientId?: 'system' | (string & {});
9
+ };
10
+ export declare class TokenManager {
11
+ readonly credentials?: Credentials;
12
+ private logger;
13
+ private _msalLogger;
14
+ private confidentialClientsByTenantId;
15
+ private managedIdentityClient;
16
+ constructor(options: TokenManagerOptions, logger: ILogger);
17
+ getBotToken(): Promise<IToken | null>;
18
+ getGraphToken(tenantId?: string): Promise<IToken | null>;
19
+ private initializeCredentials;
20
+ private getToken;
21
+ private getTokenWithClientCredentials;
22
+ private getTokenWithTokenProvider;
23
+ private getTokenWithManagedIdentity;
24
+ private getTokenWithFederatedCredentials;
25
+ private resolveTenantId;
26
+ private getConfidentialClient;
27
+ private getManagedIdentityClient;
28
+ private handleTokenResponse;
29
+ private buildLoggerOptions;
30
+ }
@@ -0,0 +1,230 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TokenManager = void 0;
4
+ const msal_node_1 = require("@azure/msal-node");
5
+ const teams_api_1 = require("@microsoft/teams.api");
6
+ const teams_common_1 = require("@microsoft/teams.common");
7
+ const DEFAULT_BOT_TOKEN_SCOPE = 'https://api.botframework.com/.default';
8
+ const DEFAULT_GRAPH_TOKEN_SCOPE = 'https://graph.microsoft.com/.default';
9
+ const DEFAULT_TENANT_FOR_BOT_TOKEN = 'botframework.com';
10
+ const DEFAULT_TENANT_FOR_GRAPH_TOKEN = 'common';
11
+ const GET_DEFAULT_TOKEN_AUTHORITY = (tenantId) => `https://login.microsoftonline.com/${tenantId}`;
12
+ const MSAL_LOG_LEVEL_TO_LOG_LEVEL = {
13
+ [msal_node_1.LogLevel.Error]: 'error',
14
+ [msal_node_1.LogLevel.Warning]: 'warn',
15
+ [msal_node_1.LogLevel.Info]: 'info',
16
+ [msal_node_1.LogLevel.Verbose]: 'debug',
17
+ [msal_node_1.LogLevel.Trace]: 'trace'
18
+ };
19
+ const LOG_LEVEL_TO_MSAL_LOG_LEVEL = {
20
+ 'error': msal_node_1.LogLevel.Error,
21
+ 'warn': msal_node_1.LogLevel.Warning,
22
+ 'info': msal_node_1.LogLevel.Info,
23
+ 'debug': msal_node_1.LogLevel.Verbose,
24
+ 'trace': msal_node_1.LogLevel.Trace
25
+ };
26
+ // Type guard functions
27
+ function isClientCredentials(credentials) {
28
+ return 'clientSecret' in credentials;
29
+ }
30
+ function isTokenCredentials(credentials) {
31
+ return 'token' in credentials;
32
+ }
33
+ function isFederatedIdentityCredentials(credentials) {
34
+ return 'managedIdentityType' in credentials;
35
+ }
36
+ class TokenManager {
37
+ credentials;
38
+ logger;
39
+ _msalLogger;
40
+ confidentialClientsByTenantId = {};
41
+ managedIdentityClient = null;
42
+ constructor(options, logger) {
43
+ this.logger = logger.child('TokenManager') ?? new teams_common_1.ConsoleLogger('TokenManager');
44
+ this._msalLogger = this.logger.child('azure/msal-node', {
45
+ // Msal logging is fairly noisy. So we keep it quiet unless the user
46
+ // explicitly turns it on
47
+ pattern: '-azure/msal-node'
48
+ });
49
+ this.credentials = this.initializeCredentials(options);
50
+ }
51
+ async getBotToken() {
52
+ return await this.getToken(DEFAULT_BOT_TOKEN_SCOPE, this.resolveTenantId(undefined, DEFAULT_TENANT_FOR_BOT_TOKEN));
53
+ }
54
+ async getGraphToken(tenantId) {
55
+ return await this.getToken(DEFAULT_GRAPH_TOKEN_SCOPE, this.resolveTenantId(tenantId, DEFAULT_TENANT_FOR_GRAPH_TOKEN));
56
+ }
57
+ initializeCredentials(options) {
58
+ const clientId = options.clientId ?? process.env.CLIENT_ID;
59
+ const tenantId = options.tenantId ?? process.env.TENANT_ID;
60
+ const clientSecret = options.clientSecret ?? process.env.CLIENT_SECRET;
61
+ const token = options.token;
62
+ const managedIdentityClientId = options.managedIdentityClientId ?? process.env.MANAGED_IDENTITY_CLIENT_ID;
63
+ if (clientId && clientSecret) {
64
+ this.logger.debug('Using Client Credentials auth');
65
+ return {
66
+ clientId,
67
+ clientSecret,
68
+ tenantId,
69
+ };
70
+ }
71
+ else if (clientId && token) {
72
+ this.logger.debug(('Using custom token factory auth'));
73
+ return {
74
+ clientId,
75
+ tenantId,
76
+ token,
77
+ };
78
+ }
79
+ else if (clientId && !clientSecret) {
80
+ if (managedIdentityClientId == null || managedIdentityClientId.toLowerCase() === clientId.toLowerCase()) {
81
+ this.logger.debug('Using user managed identity auth');
82
+ return {
83
+ clientId,
84
+ tenantId
85
+ };
86
+ }
87
+ else {
88
+ const identityType = managedIdentityClientId === 'system' ? 'system' : 'user';
89
+ this.logger.debug(`Using Federated Identity Credentials auth (${identityType})`);
90
+ return {
91
+ clientId,
92
+ tenantId,
93
+ managedIdentityClientId,
94
+ managedIdentityType: identityType,
95
+ };
96
+ }
97
+ }
98
+ return undefined;
99
+ }
100
+ async getToken(scope, tenantId) {
101
+ if (!this.credentials) {
102
+ return null;
103
+ }
104
+ if (isClientCredentials(this.credentials)) {
105
+ return this.getTokenWithClientCredentials(this.credentials, scope, tenantId);
106
+ }
107
+ else if (isTokenCredentials(this.credentials)) {
108
+ return this.getTokenWithTokenProvider(this.credentials, scope, tenantId);
109
+ }
110
+ else if (isFederatedIdentityCredentials(this.credentials)) {
111
+ return this.getTokenWithFederatedCredentials(this.credentials, scope, tenantId);
112
+ }
113
+ else {
114
+ return this.getTokenWithManagedIdentity(this.credentials, scope);
115
+ }
116
+ }
117
+ async getTokenWithClientCredentials(credentials, scope, tenantId) {
118
+ const confidentialClient = this.getConfidentialClient(credentials, tenantId);
119
+ const result = await confidentialClient.acquireTokenByClientCredential({ scopes: [scope] });
120
+ return this.handleTokenResponse(result);
121
+ }
122
+ async getTokenWithTokenProvider(credentials, scope, tenantId) {
123
+ const token = await credentials.token(scope, tenantId);
124
+ return new teams_api_1.JsonWebToken(token);
125
+ }
126
+ async getTokenWithManagedIdentity(credentials, scope) {
127
+ const managedIdentityClient = this.getManagedIdentityClient(credentials);
128
+ // Resource doesn't need the ./default suffix
129
+ const resource = scope.replace('/.default', '');
130
+ const result = await managedIdentityClient.acquireToken({
131
+ resource
132
+ });
133
+ return this.handleTokenResponse(result);
134
+ }
135
+ async getTokenWithFederatedCredentials(credentials, scope, tenantId) {
136
+ const managedIdentityClient = this.getManagedIdentityClient(credentials);
137
+ const managedIdentityTokenRes = await managedIdentityClient.acquireToken({ resource: 'api://AzureADTokenExchange' });
138
+ const confidentialClient = new msal_node_1.ConfidentialClientApplication({
139
+ auth: {
140
+ clientId: credentials.clientId,
141
+ clientAssertion: managedIdentityTokenRes.accessToken,
142
+ authority: GET_DEFAULT_TOKEN_AUTHORITY(tenantId)
143
+ },
144
+ system: {
145
+ loggerOptions: this.buildLoggerOptions()
146
+ }
147
+ });
148
+ const result = await confidentialClient.acquireTokenByClientCredential({ scopes: [scope] });
149
+ return this.handleTokenResponse(result);
150
+ }
151
+ resolveTenantId(tenantId, defaultTenantId) {
152
+ return tenantId || this.credentials?.tenantId || defaultTenantId;
153
+ }
154
+ getConfidentialClient(credentials, tenantId) {
155
+ const cachedClient = this.confidentialClientsByTenantId[tenantId];
156
+ if (cachedClient) {
157
+ return cachedClient;
158
+ }
159
+ const client = new msal_node_1.ConfidentialClientApplication({
160
+ auth: {
161
+ clientId: credentials.clientId,
162
+ clientSecret: credentials.clientSecret,
163
+ authority: GET_DEFAULT_TOKEN_AUTHORITY(tenantId)
164
+ },
165
+ system: {
166
+ loggerOptions: this.buildLoggerOptions()
167
+ }
168
+ });
169
+ this.confidentialClientsByTenantId[tenantId] = client;
170
+ return client;
171
+ }
172
+ getManagedIdentityClient(credentials) {
173
+ if (this.managedIdentityClient) {
174
+ return this.managedIdentityClient;
175
+ }
176
+ if (isFederatedIdentityCredentials(credentials)) {
177
+ if (credentials.managedIdentityType === 'user') {
178
+ this.managedIdentityClient = new msal_node_1.ManagedIdentityApplication({
179
+ managedIdentityIdParams: {
180
+ userAssignedClientId: credentials.managedIdentityClientId
181
+ },
182
+ system: {
183
+ loggerOptions: this.buildLoggerOptions()
184
+ }
185
+ });
186
+ }
187
+ else {
188
+ this.managedIdentityClient = new msal_node_1.ManagedIdentityApplication({
189
+ managedIdentityIdParams: undefined, //no options automatically indicates system assigned managed identity
190
+ system: {
191
+ loggerOptions: this.buildLoggerOptions()
192
+ }
193
+ });
194
+ }
195
+ }
196
+ else {
197
+ this.managedIdentityClient = new msal_node_1.ManagedIdentityApplication({
198
+ managedIdentityIdParams: {
199
+ userAssignedClientId: credentials.clientId
200
+ },
201
+ system: {
202
+ loggerOptions: this.buildLoggerOptions()
203
+ }
204
+ });
205
+ }
206
+ return this.managedIdentityClient;
207
+ }
208
+ handleTokenResponse(result) {
209
+ if (!result) {
210
+ throw new Error('Failed to get token');
211
+ }
212
+ return new teams_api_1.JsonWebToken(result.accessToken);
213
+ }
214
+ buildLoggerOptions() {
215
+ return {
216
+ logLevel: this.logger.loggerOptions?.level != null ? LOG_LEVEL_TO_MSAL_LOG_LEVEL[this.logger.loggerOptions.level] : undefined,
217
+ loggerCallback: (level, message) => {
218
+ // There's a bug in MSAL where it warns this on all requests.
219
+ // https://github.com/AzureAD/microsoft-authentication-library-for-js/issues/7917
220
+ if (message.endsWith('Warning - No client info in response')) {
221
+ return;
222
+ }
223
+ this._msalLogger.log(MSAL_LOG_LEVEL_TO_LOG_LEVEL[level], message);
224
+ },
225
+ piiLoggingEnabled: false,
226
+ };
227
+ }
228
+ }
229
+ exports.TokenManager = TokenManager;
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4tbWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90b2tlbi1tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLGdEQUFnSztBQUVoSyxvREFBNEs7QUFDNUssMERBQTJFO0FBRTNFLE1BQU0sdUJBQXVCLEdBQUcsdUNBQXVDLENBQUM7QUFDeEUsTUFBTSx5QkFBeUIsR0FBRyxzQ0FBc0MsQ0FBQztBQUN6RSxNQUFNLDRCQUE0QixHQUFHLGtCQUFrQixDQUFDO0FBQ3hELE1BQU0sOEJBQThCLEdBQUcsUUFBUSxDQUFDO0FBQ2hELE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxRQUFnQixFQUFFLEVBQUUsQ0FBQyxxQ0FBcUMsUUFBUSxFQUFFLENBQUM7QUFFMUcsTUFBTSwyQkFBMkIsR0FBbUM7SUFDbEUsQ0FBQyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87SUFDN0IsQ0FBQyxvQkFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU07SUFDOUIsQ0FBQyxvQkFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU07SUFDM0IsQ0FBQyxvQkFBWSxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU87SUFDL0IsQ0FBQyxvQkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU87Q0FDOUIsQ0FBQztBQUNGLE1BQU0sMkJBQTJCLEdBQW1DO0lBQ2xFLE9BQU8sRUFBRSxvQkFBWSxDQUFDLEtBQUs7SUFDM0IsTUFBTSxFQUFFLG9CQUFZLENBQUMsT0FBTztJQUM1QixNQUFNLEVBQUUsb0JBQVksQ0FBQyxJQUFJO0lBQ3pCLE9BQU8sRUFBRSxvQkFBWSxDQUFDLE9BQU87SUFDN0IsT0FBTyxFQUFFLG9CQUFZLENBQUMsS0FBSztDQUM1QixDQUFDO0FBSUYsdUJBQXVCO0FBQ3ZCLFNBQVMsbUJBQW1CLENBQUMsV0FBd0I7SUFDbkQsT0FBTyxjQUFjLElBQUksV0FBVyxDQUFDO0FBQ3ZDLENBQUM7QUFFRCxTQUFTLGtC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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/teams.apps",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -38,6 +38,7 @@
38
38
  "generate": "npx quicktype -s schema -l typescript ./manifest.schema.json -o ./src/manifest.ts --prefer-unions --prefer-types --just-types"
39
39
  },
40
40
  "dependencies": {
41
+ "@azure/msal-node": "^3.8.1",
41
42
  "axios": "^1.12.0",
42
43
  "cors": "^2.8.5",
43
44
  "express": "^4.21.0",
@@ -46,12 +47,12 @@
46
47
  "reflect-metadata": "^0.2.2"
47
48
  },
48
49
  "peerDependencies": {
49
- "@microsoft/teams.api": "2.0.2",
50
- "@microsoft/teams.common": "2.0.2",
51
- "@microsoft/teams.graph": "2.0.2"
50
+ "@microsoft/teams.api": "2.0.4",
51
+ "@microsoft/teams.common": "2.0.4",
52
+ "@microsoft/teams.graph": "2.0.4"
52
53
  },
53
54
  "devDependencies": {
54
- "@microsoft/teams.config": "2.0.2",
55
+ "@microsoft/teams.config": "2.0.4",
55
56
  "@types/cors": "^2.8.17",
56
57
  "@types/express": "^5.0.0",
57
58
  "@types/jest": "^29.5.12",