Skip to content

Commit 8490950

Browse files
committed
remove about the code
1 parent 2cb579b commit 8490950

File tree

5 files changed

+1
-860
lines changed

5 files changed

+1
-860
lines changed

1-Authentication/1-sign-in/README.md

Lines changed: 0 additions & 94 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
1. [Registration](#registration)
99
1. [Running the sample](#running-the-sample)
1010
1. [Explore the sample](#explore-the-sample)
11-
1. [About the code](#about-the-code)
1211
1. [More information](#more-information)
1312
1. [Community Help and Support](#community-help-and-support)
1413
1. [Contributing](#contributing)
@@ -158,99 +157,6 @@ Locate the root of the sample folder. Then:
158157

159158
Were we successful in addressing your learning objective? Consider taking a moment to [share your experience with us](https://forms.office.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbR73pcsbpbxNJuZCMKN0lURpUQkRCSVdRSk8wUjdZSkg2NEZGOFFaTkxQVyQlQCN0PWcu).
160159

161-
## About the code
162-
163-
### Initialization
164-
165-
In [app.js](./App/app.js), we initialize the [WebAppAuthProvider]() class. Once initialized, **WebAppAuthProvider** exposes the [authenticate()]() middleware, which sets the default routes for handling redirect response from Azure AD and etc.
166-
167-
```javascript
168-
const { WebAppAuthProvider } = require('msal-node-wrapper');
169-
170-
const authConfig = require('./authConfig.js');
171-
172-
const SERVER_PORT = process.env.PORT || 4000;
173-
174-
// initialize express
175-
const app = express();
176-
177-
// ...
178-
179-
// instantiate the wrapper
180-
const authProvider = await WebAppAuthProvider.initialize(authConfig);
181-
182-
// initialize the auth middleware
183-
app.use(authProvider.authenticate());
184-
185-
// ...
186-
187-
app.listen(SERVER_PORT, () => console.log(`Msal Node Auth Code Sample app listening on port ${SERVER_PORT}!`));
188-
```
189-
190-
The `authProvider` object exposes several middleware that you can use in your routes for authN/authZ tasks:
191-
192-
```javascript
193-
// authentication routes
194-
app.get(
195-
'/signin',
196-
(req, res, next) => {
197-
return req.authContext.login({
198-
postLoginRedirectUri: "/", // redirect here after login
199-
})(req, res, next);
200-
}
201-
);
202-
203-
app.get(
204-
'/signout',
205-
(req, res, next) => {
206-
return req.authContext.logout({
207-
postLogoutRedirectUri: "/", // redirect here after logout
208-
})(req, res, next);
209-
}
210-
);
211-
212-
// secure routes
213-
app.get('/id',
214-
authProvider.guard({
215-
forceLogin: true // force user to login if not authenticated
216-
}),
217-
mainController.getIdPage
218-
);
219-
220-
/**
221-
* This error handler is needed to catch interaction_required errors thrown by MSAL.
222-
* Make sure to add it to your middleware chain after all your routers, but before any other
223-
* error handlers.
224-
*/
225-
app.use(authProvider.interactionErrorHandler());
226-
```
227-
228-
Under the hood, the wrapper creates an **MSAL Node** [configuration object](https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-node/docs/configuration.md) and instantiates the MSAL Node [ConfidentialClientApplication](https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/dev/lib/msal-node/src/client/ConfidentialClientApplication.ts) class by passing it.
229-
230-
### Sign-in
231-
232-
The user clicks on the **sign-in** button and navigates to `/signin` route. From there, the [login()]() middleware takes over. It creates and encodes a state object to pass with an authorization code request. The login middleware takes several optional configuration parameters.
233-
234-
### Secure routes
235-
236-
Simply add the [guard()]() middleware to your route, before the controller that displays the page you want to be secure. This would require any user to be authenticated to access this route:
237-
238-
```javascript
239-
// secure routes
240-
app.get('/id',
241-
msid.isAuthenticated(),
242-
mainController.getIdPage
243-
);
244-
```
245-
246-
### Sign-out
247-
248-
To sign out, the wrapper's [signOut()](https://azure-samples.github.io/microsoft-identity-express/classes/MsalWebAppAuthClient.html#signOut) middleware constructs a logout URL following the [guide here](https://docs.microsoft.com/azure/active-directory/develop/v2-protocols-oidc#send-a-sign-out-request). Then, we clear the cache, destroy the current **express-session** and redirect the user to the **sign-out endpoint**:
249-
250-
```javascript
251-
252-
```
253-
254160
## More information
255161

256162
Configure your application:

0 commit comments

Comments
 (0)