Optimizing and Securing Node.js Applications


Overview/Description
Target Audience
Prerequisites
Expected Duration
Lesson Objectives
Course Number
Expertise Level



Overview/Description
Node.js is a server-side framework that uses an event driven asynchronous model and is built on the Google Chrome V8 JavaScript runtime engine. This course demonstrates how to work with events and processes to optimize Node.js applications. It also covers how to implement data security and authorization and authentication in Node.js applications.

Target Audience
Web developers who want to learn how to optimize and secure Node.js applications

Prerequisites
None

Expected Duration (hours)
2.7

Lesson Objectives

Optimizing and Securing Node.js Applications

  • start the course
  • describe EventEmitter and use it to create custom events in a Node application
  • describe the global process object and use it to access information about the current Node process
  • describe the Process object and implement it to handle events globally in a Node.js application
  • create child processes in Node.js applications using spawn
  • contrast spawn with exec and use exec to run shell commands as child processes in Node.js applications
  • contrast execFile with exec and spawn and use it to run a program file directly from a Node.js application
  • use fork to create child processes with inter-process communication in Node.js applications
  • use the Cluster module to cluster processes in a Node.js application
  • implement timers to control flow in a Node.js application
  • list and describe available hash algorithms in Node.js
  • use one or more hash algorithms to hash data in Node.js application
  • introduce the crypto module and use a cryptographic hash algorithm to check a file's integrity
  • use the bcryptjs module to secure user credentials
  • use the Node.js crypto module to encrypt user credentials
  • describe and use OpenSSL ciphers to encrypt data in Node.js
  • use the Node.js TLS module to secure server transmissions
  • set up a Mongo database and Jade views to support session-based authentication in Node.js Express applications
  • configure the passport module on top of an Express App to support user authentication from a Mongo database
  • implement local authentication in an Express App by defining the necessary routes and using passport
  • set up a Mongo database and Jade views to support authorization in a Node Express application
  • implement basic role-based authorization in an Express application
  • use HMAC to implement message authentication in Node.js applications
  • set up a Mongo database and Jade views to support token-based authentication in Node.js Express applications
  • configure the passport module on top of an Express App to support token-based user authentication
  • implement token-based authentication in an Express App by defining the necessary routes and using passport
  • understand concepts in optimizing and securing Node.js applications
  • Course Number:
    sl_jsnd_a04_it_enus

    Expertise Level
    Expert