PLEASE READ ALL ASSIGNMENT TO ANSWER ALL QUESTIONS AND FOLLOW THE GRADING RUBRIC PROPERLY.
Read the homework4.pdf file to get all the diagrams that were missed below here
Review, Run and Understand the Sample Java Web application.
The current code, uses Java JSP and Servlets to allow a user to login to their account and view credit card data stored in the database. The functionality is relatively simple but several PCI compliance rules have been violated that will prevent the application from being approved by a PCI software auditor.
You should first load up the application, populate the database and make sure the application is working in your environment as expected. The application uses the Java Derby relational database. The script used to populate the application is attached in your project folder as well as the Java web project itself. You should be able to open the existing project using Netbeans. However; you may need to load the Derby drivers to the libraries for the project.
You can create a new database connection by clicking the services folder and then right mouse-click on Databases select new connection. You can then create a connection for the SDEV425 database. Below is a screen capture that represents my configuration.
There are some tutorials on the Internet on using the Derby database within Netbeans. (e.g. https://netbeans.org/kb/docs/ide/java-db.html) The key is making sure you have the drivers in the library of your project and you run the scrips to populate the tables. To execute a command in the database from within Netbeans you right click the connection and select execute command. A window will then pop-up for that connection and you can execute any command, including all of those database scripts provided to you.
Once you have the database loaded, you can try the application. (This assumes you have properly installed the Java EE when you installed Netbeans).
To launch the application, just highlight the java project you loaded (SDEV425_HW4) and click the green arrow. Once launched, your glassfish server will start and your default browser will be invoked. The application will automatically launch and the home page will be displayed.
You can (and definitely should) review the database script to see the current users and associated passwords. As a test, you can click the Sign in link and enter this account information
Email: [email protected] Password: mypassword
After successful sign-in you will see the welcome message displayed:
Clicking on the Your Account menu will display the credit card information.
Clicking on Sign out will invalidate the current session.
Be sure to demonstrate the application runs properly in your development environment.
Carefully, review the code and perform analysis as needed. You should experiment with running the application as well as reviewing the code to identify possible areas of security concerns. You don’t have to be an expert in JSP/Servlets, html or css to be able to find some of the issues that you have read about in the PCI documentation. However; it is recommended you experiment with the code so you have a baseline familiarity with the model and know how the JSP and servlets communicate with each other.
Focus on the PCI compliance issues found in sections 6 through 9 as you look for issues. There are multiple issues and you should work to fix and document as many as possible.
a. Make sure your Java EE Netbeans is working properly. b. Work to get the Derby database populated and working with the SDEV425_HW4 Web application. c. Study and experiment with the code. For example, even if you haven’t used CSS style sheets before you should be curious about how color schemes are used and how easily they can be changed in the css file. You should also note how the database connections are made and how JSP and servlets communicate. d. Again, start on this early. This will take you longer than you think.
Provide all of your modified Java code, your modified database script and a PDF document describing how you addressed each issue. You should clearly describe the code and what PCI compliance issue were violated and how you fixed it. You should provide screen captures as needed to support your findings and improvements.
Be sure your PDF document is neat, well-organized and is well-written with minimal spelling and grammar errors. All references used should be included in your document.