Cloud computing (1644) - ASM2 - Grade D, Study Guides, Projects, Research of Computer Science

Cloud computing (1644) - ASM2 - Grade D

Typology: Study Guides, Projects, Research

2022/2023

Uploaded on 06/15/2023

Phan-Nhat-Linh-11
Phan-Nhat-Linh-11 🇻🇳

4.9

(108)

34 documents

1 / 64

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
ASSIGNMENT 2 FRONT SHEET
Qualification
BTEC Level 5 HND Diploma in Computing
Unit number and title
Unit 16: Cloud Computing
Submission date
Date Received 1st
submission
Re-submission Date
Date Received 2nd
submission
Student Name
Phan Nhat Linh
Student ID
GCD 201635
Class
GCD0905
Assessor name
Tran Trong Minh
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.
Student’s signature
Linh
Grading grid
P5
P6
P7
P8
M3
M4
D2
D3
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40

Partial preview of the text

Download Cloud computing (1644) - ASM2 - Grade D and more Study Guides, Projects, Research Computer Science in PDF only on Docsity!

ASSIGNMENT 2 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit^16 : Cloud Computing Submission date Date Received 1st submission Re-submission Date Date Received 2nd submission Student Name Phan Nhat Linh^ Student ID GCD 201635 Class GCD0905 Assessor name Tran Trong Minh Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature Linh Grading grid P5 P6 P7 P8 M3 M4 D2 D

 Summative Feedback:  Resubmission Feedback:

Grade: Assessor Signature: Date: Internal Verifier’s Comments: Signature & Date:

    1. Configure Git...........................................................................................................................................
    1. Configure Heroku
    1. Connect Heroku to Git
    1. Configure PostgreSQL on Heroku
  • II/ IMPLEMENT A CLOUD PLATFORM USING OPEN-SOURCE TOOLS (P6)
      1. Setup PgAdmin
      1. Create database....................................................................................................................................
      1. Code
      1. Interface
  • DISCUSS APPROPRIATE SOLUTIONS TO THESE PROBLEMS (P7) III/ ANALYSE THE MOST COMMON PROBLEMS WHICH ARISE IN A CLOUD COMPUTING PLATFORM AND
      1. Security
      1. Limited control
      1. Data loss or theft
      1. Vendor lock-in
      1. General answers to the disadvantages of cloud computing
  • IV/ ASSESS THE MOST COMMON SECURITY ISSUES IN CLOUD ENVIRONMENTS (P8)
      1. Data Privacy Issues
      1. Lack of Visibility/Control
      1. Notifying Customers Affected by Data Breaches
      1. Some cloud platforms may violate industry regulations
      1. User Access Control
      1. Lack of Personnel Experienced in Cloud Security Measures
      1. Denial of Service Attacks
      1. Accidental Exposure of Credentials
  • V/ DISCUSS THE ISSUES AND CONSTRAINTS ONE CAN FACE DURING THE DEVELOPMENT PROCESS (M3)
      1. Interoperability and Portability
      1. Performance Issues
      1. False Promises of Scalability
      1. Reliability and Availability
      1. Loosely Coupled Service Design
      1. Query Oriented vs. API Oriented Programming
      1. Application Security..............................................................................................................................
  • (M4) VI/ DISCUSS HOW TO OVERCOME THESE SECURITY ISSUES WHEN BUILDING A SECURE CLOUD PLATFORM
      1. Implement Endpoint Security...............................................................................................................
      1. Train your Employees
      1. Take Advantage of Data Encryption
      1. Define Usage Policies
      1. Create and Maintain a Safe List............................................................................................................
  • VII/ CRITICALLY DISCUSS HOW ONE CAN OVERCOME THESE ISSUES AND CONSTRAINTS (D2)
      1. Deploy Multi-Factor Authentication (MFA)
      1. Manage User Access
      1. Monitor End User Activities With Automated Solutions to Detect Intruders
      1. Create a Comprehensive Off-boarding Process to Protect against Departing Employees
      1. Provide Anti-Phishing Training for Employees on a Regular Basis
      1. Consider Cloud-to-Cloud Back Up Solutions
  • solution (D3) VIII/ Critically discuss how an organization should protect their data when they migrate to a cloud
      1. Set Up Backup And Recovery Options
      1. Encrypt Your Data
      1. Set User Permissions
      1. Set Up Proper Passwords
      1. Secure End User Devices
      1. Avoid Uploading Confidential Data
      1. Run Tests
  • References
  • Figure 1: Git init Table of Figures
  • Figure 2: Git add
  • Figure 3: Git commit
  • Figure 4: Git remote
  • Figure 5: Git push
  • Figure 6: Result of configure git
  • Figure 7: Create account in heroku
  • Figure 8: Create new app section
  • Figure 9: Create new app
  • Figure 10: All tab in the app
  • Figure 11: Choose repository to connect
  • Figure 12: Deploy branch
  • Figure 13: Resources tab
  • Figure 14: Find the Heroku Postgres
  • Figure 15: Result of configure Heroku Posgres
  • Figure 16: Create sever.................................................................................................................................
  • Figure 17: Database information
  • Figure 18: Register sever form
  • Figure 19: Result of connecting successfully
  • Figure 20: users table
  • Figure 21: products table
  • Figure 22: shops table
  • Figure 23: install pg library
  • Figure 24: module pg_conn
  • Figure 25: app.js
  • Figure 26: authenticator.js
  • Figure 27: userData.js
  • Figure 28: tableString.js
  • Figure 29: productAdd.js
  • Figure 30: productDelete.js
  • Figure 31: productUpdate.js.........................................................................................................................
  • Figure 32: produtData.js...............................................................................................................................
  • Figure 33: shopData.js
  • Figure 34: selectBox.js
  • Figure 35: selectShopData.js
  • Figure 36: sigup.js
  • Figure 37: index.ejs.......................................................................................................................................
  • Figure 38: login.ejs
  • Figure 39: signup.ejs
  • Figure 40: users.ejs
  • Figure 41: updateProduct.ejs
  • Figure 42: admin.ejs
  • Figure 43: error.ejs
  • Figure 44: Index.js (import module)
  • Figure 45: Index.js ( ‘ / ’ )
  • Figure 46: index.js ( ‘ /signup ‘ )
  • Figure 47: index.js ( ‘ /login ‘ )
  • Figure 48: index.js ( ‘ /logout ‘ )
  • Figure 49: users.js (import module)
  • Figure 50: users.js get method ( ‘ / ‘ )
  • Figure 51: users.js post method ( ‘ / ‘ ).........................................................................................................
  • Figure 52: users.js post method ( ‘ / ‘ ).........................................................................................................
  • Figure 53: admin.js (import module)
  • Figure 54: admin.js ( ' / ' )
  • Figure 55: Landing page
  • Figure 56: Login page
  • Figure 57: Sign up page
  • Figure 58: users page....................................................................................................................................
  • Figure 59: Update page
  • Figure 60: Select box in admin page
  • Figure 61: All shop data in admin page
  • Figure 62: Error page
  • Figure 63: Security
  • Figure 64: Limited control
  • Figure 65: Data loss or theft
  • Figure 66: Vendor lock-in
  • Figure 67: Deploy Multi-Factor Authentication (MFA)
  • Figure 68: Manage User Access
  • Figure 69: Monitor End User Activities
  • Figure 70: Create a Comprehensive Off-boarding Process
  • Figure 71: Provide Anti-Phishing Training
  • Figure 72: Consider Cloud-to-Cloud Back Up Solutions

I/ CONFIGURE A CLOUD COMPUTING

PLATFORM WITH A CLOUD SERVICE

PROVIDER’S FRAMEWORK (P5)

1. Configure Git

To register a project as a local Git repository the first thing I need to do is perform the following command at my project Figure 1 : Git init This will create a .git folder at your project root and will allow me to start using Git in that repository. Add the files in my new local repository. This stages them for the first commit. Figure 2 : Git add. Commit the files that I've staged in my local repository. Figure 3 : Git commit At the top of my GitHub repository's Quick Setup page, click to copy the remote repository URL. In the Command prompt, add the URL for the remote repository where my local repository will be pushed. Figure 4 : Git remote Push the changes in my local repository to GitHub if there is a remote branch called main

Figure 7 : Create account in heroku Next, create a new application by tapping the button “New” from the top right Figure 8 : Create new app section

Figure 9 : Create new app We can see some amazing connections with Heroku in the Deploy tab, which we will deal with in the upcoming session. Figure 10 : All tab in the app

3. Connect Heroku to Git We can see numerous ways to link Heroku under the Deploy page. However, in this case, we will select GitHub because we have previously published our code to GitHub through Git.

Figure 13 : Resources tab We will go ahead and find the PostgreSQL Figure 14 : Find the Heroku Postgres Choose Heroku Postgres and wait the result Figure 15 : Result of configure Heroku Posgres

II/ IMPLEMENT A CLOUD PLATFORM

USING OPEN-SOURCE TOOLS (P6)

1. Setup PgAdmin

After finishing downloading, you should be aware that the app will ask for customized password during the process of Figure 16 : Create sever After pressing the Create → Server option. A window will pop up for us to fill in the information Go to Heroku Postgres to get information about database to PgAdmin connect Figure 17 : Database information

Figure 19 : Result of connecting successfully

2. Create database Based on the scenario we can design for company ATN including three tables: products, shops and users This is the table containing the user's information. The table contains the id code containing the id of each user, which is configured incrementally, followed by the column name is the user name, shop is the column containing the id of that user's shop, passwd is the password of the login account, and the main role is the role of the user Figure 20 : users table The products table contains the information of the product including the ascending id, product name, price, quantity, and the store containing the product.

Figure 21 : products table shops is a table containing the information of the shop, including the ascending id, shop name, address and contact phone number Figure 22 : shops table

Figure 25 : app.js This is the main file of our program. This is the internals of app.js when installing the expressjs library.

We can see in this there is a route routing section of the program. To show the view to the user, we modified the view engine from a jave file to an ejs file so that we can implement the view easily. Because it is quite similar to html language. Also to display the image in the browser, we need to route to the public folder. 3.2 Models Figure 26 : authenticator.js For this module, it will accept username and password. Then run the query to check if the username and password match the database, then return a boolean.