Skip to content

Commit 182a035

Browse files
authored
Merge pull request #85 from microsoftgraph/feature/msalnode
Feature/msalnode
2 parents dfb4fe5 + ca42d1e commit 182a035

File tree

8 files changed

+225
-204
lines changed

8 files changed

+225
-204
lines changed

constants.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
exports.adalConfiguration = {
1+
exports.msalConfiguration = {
22
authority: 'https://login.microsoftonline.com/common',
33
clientID: 'ENTER_YOUR_CLIENT_ID',
44
clientSecret: 'ENTER_YOUR_SECRET',

helpers/authHelper.js

Lines changed: 33 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,24 @@
1-
import { AuthenticationContext } from 'adal-node';
1+
import { ConfidentialClientApplication } from '@azure/msal-node';
22

3-
import { adalConfiguration } from '../constants';
3+
import { msalConfiguration } from '../constants';
44

5-
const resource = 'https://graph.microsoft.com/';
5+
const resource = 'https://graph.microsoft.com/.default';
66

77
/**
88
* Generate a fully formed uri to use for authentication based on the supplied resource argument
99
* @return {string} a fully formed uri with which authentication can be completed.
1010
*/
1111
export function getAuthUrl() {
12-
return adalConfiguration.authority + '/oauth2/authorize'
13-
+ '?client_id=' + adalConfiguration.clientID
14-
+ '&response_type=code'
15-
+ '&redirect_uri=' + adalConfiguration.redirectUri;
12+
const authContext = new ConfidentialClientApplication({
13+
auth: {
14+
clientId: msalConfiguration.clientID,
15+
authority: msalConfiguration.authority.replace('common', msalConfiguration.tenantID),
16+
clientSecret: msalConfiguration.clientSecret
17+
}
18+
});
19+
return authContext.getAuthCodeUrl({
20+
redirectUri: msalConfiguration.redirectUri
21+
});
1622
}
1723

1824
/**
@@ -21,34 +27,29 @@ export function getAuthUrl() {
2127
* @param {AcquireTokenCallback} callback The callback function.
2228
*/
2329
export function getTokenFromCode(code) {
24-
const authContext = new AuthenticationContext(adalConfiguration.authority);
25-
return new Promise((resolve, reject) => {
26-
authContext.acquireTokenWithAuthorizationCode(
27-
code,
28-
adalConfiguration.redirectUri,
29-
resource,
30-
adalConfiguration.clientID,
31-
adalConfiguration.clientSecret,
32-
(err, token) => {
33-
if (err) {
34-
reject(err);
35-
} else {
36-
resolve(token);
37-
}
38-
}
39-
);
30+
const authContext = new ConfidentialClientApplication({
31+
auth: {
32+
clientId: msalConfiguration.clientID,
33+
authority: msalConfiguration.authority.replace('common', msalConfiguration.tenantID),
34+
clientSecret: msalConfiguration.clientSecret
35+
}
36+
});
37+
return authContext.acquireTokenByCode({
38+
code: code,
39+
redirectUri: msalConfiguration.redirectUri,
40+
scopes: [resource]
4041
});
4142
}
4243

4344
export function getAppOnlyToken() {
44-
const authContext = new AuthenticationContext(adalConfiguration.authority.replace('common', adalConfiguration.tenantID));
45-
return new Promise((resolve, reject) => {
46-
authContext.acquireTokenWithClientCredentials(resource, adalConfiguration.clientID, adalConfiguration.clientSecret, (err, token) => {
47-
if (err) {
48-
reject(err);
49-
} else {
50-
resolve(token);
51-
}
52-
});
45+
const authContext = new ConfidentialClientApplication({
46+
auth: {
47+
clientId: msalConfiguration.clientID,
48+
authority: msalConfiguration.authority.replace('common', msalConfiguration.tenantID),
49+
clientSecret: msalConfiguration.clientSecret
50+
}
51+
});
52+
return authContext.acquireTokenByClientCredential({
53+
scopes: [resource]
5354
});
5455
}

0 commit comments

Comments
 (0)