Module: Authentication and authorization

Learn how to verify user identity and restrict user access.

Learning Outcomes

Acquire capability with the Eclipse IDE

You develop capability with the Eclipse IDE that enables you to develop software efficiently and effectively.

Write code efficiently

You can implement correctly functioning Java code in a short period of time.

Design using HTML and CSS

You can use HTML and CSS to design basic web pages, and you can use tools (Eclipse, Chrome Developer Tools, LiveReload) to do this development efficiently.

Design using Twitter Bootstrap

You can use Twitter Bootstrap 3 along with HTML and CSS to design modern, responsive, and attractive web pages.

Design using Play Framework

You can use the Play Framework to implement web applications.

Use cloud-based hosting effectively

You can use git for version control and configuration management, and GitHub as a shared repository for software development artifacts.

Use cloud-based deployment effectively

You can use the CloudBees service to host your web application in the cloud, and create a custom domain name for your application.

Readings

Introduction to authorization and authentication

Example code using the play-example-login system.

Screencast 16 min

Merging your WOD branches

Dealing with all the branches you’ve created due to your WODs.

Screencast 6 min

Play-example-login

Sample play application implementing authorization and authentication.

Experiential Learning

Practice WOD: DigitsLogin

Add authorization and authentication to your Digits application.

Practice WOD: DigitsMultiUser

Support multiple users in your Digits application.

Practice WOD: DigitsCloudAuthentication

Understand issues around cloud-based authorization and authentication.

Assessments

Group WOD: Digits Registration

Outcomes assessed: Acquire capability with the Eclipse IDE, Create standards compliant Java code, Write code efficiently, Design using Twitter Bootstrap, Design using Play Framework, Use cloud-based hosting effectively, Work effectively in a group

Rx: < 40 min Av: 40-50 min Sd: 50-60 min DNF: 60+ min or incorrect

Students worked in groups in-class to add a registration page for new users to one of their Digits applications.

Discussion:

  • Most groups seemed quite comfortable with this task.

Authentication and Authorization Technical Essay

Outcomes assessed: Create high quality technical writing

This assessment evaluated the ability of students to write a high quality technical essay summarizing their experiences doing the Authorization and Authentication practice WODs.

Discussion:

  • All students did acceptably well on this essay.

Individual WOD: Surferpedia Login

Outcomes assessed: Acquire capability with the Eclipse IDE, Create standards compliant Java code, Write code efficiently, Design using Play Framework, Use cloud-based hosting effectively

Rx: < 30 min Av: 30-45 min Sd: 45-60 min DNF: 60+ min or incorrect

This was a fairly complicated WOD that required the students to add authorization and authentication to their Surferpedia system. It required changes to around 14 files and about 300 added lines of code.

Discussion:

  • This turned out to be a (relatively) hard WOD; four students DNF’d.