Câu hỏi: SDN302 Chương 9 - HTTPS, upload/download file, CORS và OAuth
21 câu trắc nghiệm kèm lời giải của môn Server-Side development with NodeJS, Express, and MongoDB, xếp theo thứ tự nhập vào ngân hàng.
Danh sách câu hỏi
20/21 câuCòn 1
1Which of the following is a standard security protocol used for secure communication over the internet?4 lựa chọnDễ
AFTP
BSMTP
CSSL/TLS
DHTTP
Lời giải
Mở trang câu hỏi này →SSL/TLS (Secure Sockets Layer/Transport Layer Security) là một giao thức bảo mật tiêu chuẩn được sử dụng để đảm bảo giao tiếp an toàn trên internet. Nó cung cấp lớp bảo mật cho các giao tiếp mạng, giúp ngăn chặn việc nghe trộm và giả mạo thông tin. SSL/TLS được sử dụng rộng rãi trong các ứng dụng web, email và các dịch vụ trực tuyến khác để bảo vệ thông tin người dùng. Nó sử dụng các kỹ thuật mã hóa mạnh mẽ để bảo vệ dữ liệu và đảm bảo rằng thông tin được truyền đi an toàn.
2Which HTTP header is used to pass the OAuth token in requests?4 lựa chọnTrung bình67% trả lời đúng
AAuthorization
BAuthentication
CBearer
DAccess-Token
Lời giải
Mở trang câu hỏi này →Để xác thực và xác thực quyền truy cập vào các tài nguyên trên web, OAuth sử dụng một loại token gọi là Access Token. Khi gửi yêu cầu HTTP, bạn cần truyền Access Token đến server để xác thực quyền truy cập. HTTP header được sử dụng để truyền Access Token trong các yêu cầu là Authorization. Header này chứa thông tin về Access Token, bao gồm loại token và giá trị token. Ví dụ, bạn có thể sử dụng header Authorization: Bearer <Access Token> để truyền Access Token. Điều này cho phép server xác thực quyền truy cập và cung cấp quyền truy cập vào các tài nguyên mong muốn.
AHTTPS encrypts all data transmitted between the client and server, providing a secure channel for transmitting sensitive data, such as passwords, credit card information, and personal data
BHTTPS uses SSL/TLS certificates to authenticate the server and verify that the client is communicating with the correct server.
CHTTPS can help build trust with your users by providing a secure and trustworthy environment for transmitting sensitive data.
DHTTPS can add some overhead to your application's performance, as the encryption and decryption of data requires additional computational resources
Lời giải
Mở trang câu hỏi này →HTTPS (Hypertext Transfer Protocol Secure) là một giao thức truyền thông an toàn được sử dụng để truyền tải dữ liệu giữa máy khách và máy chủ trong ứng dụng Node.js. Các lợi ích chính của việc sử dụng HTTPS bao gồm: HTTPS mã hóa tất cả dữ liệu được truyền tải giữa máy khách và máy chủ, cung cấp một kênh an toàn để truyền tải dữ liệu nhạy cảm như mật khẩu, thông tin thẻ tín dụng và dữ liệu cá nhân. Điều này giúp ngăn chặn việc truy cập trái phép và bảo vệ dữ liệu của người dùng. Ngoài ra, HTTPS sử dụng chứng chỉ SSL/TLS để xác thực máy chủ và xác minh rằng máy khách đang giao tiếp với máy chủ chính xác. Điều này giúp tăng cường tính bảo mật và ngăn chặn các cuộc tấn công giả mạo. Cuối cùng, HTTPS giúp xây dựng niềm tin với người dùng bằng cách cung cấp một môi trường an toàn và đáng tin cậy để truyền tải dữ liệu nhạy cảm.
4What is the purpose of the CSR (Certificate Signing Request) in the SSL certificate creation process?4 lựa chọnDễ
ATo encrypt the data on the server.
BTo request a digital certificate from a Certificate Authority (CA).
CTo create a private key.
DTo verify the domain ownership.
Lời giải
Mở trang câu hỏi này →CSR (Yêu cầu ký số chứng chỉ) là một phần quan trọng trong quá trình tạo chứng chỉ SSL. Mục đích chính của CSR là yêu cầu một chứng chỉ số học từ một Cơ quan Ký số Chứng chỉ (CA). Khi tạo CSR, bạn sẽ cung cấp thông tin về tổ chức của mình, bao gồm tên tổ chức, địa chỉ, tên miền và các thông tin khác. Sau đó, bạn sẽ gửi CSR đến CA để yêu cầu họ ký số chứng chỉ số học. CA sẽ kiểm tra thông tin và xác minh tính hợp lệ của tổ chức trước khi ký số chứng chỉ. Chứng chỉ số học này sẽ được sử dụng để thiết lập kết nối SSL/TLS giữa máy chủ và khách hàng, đảm bảo rằng thông tin được truyền đi an toàn và bảo mật.
5What is the purpose of CORS?4 lựa chọnTrung bình67% trả lời đúng
ATo manage secure communication over HTTPS
BTo enable requests from one origin to another
CTo improve database performance
DTo encrypt data between clients and servers
Lời giải
Mở trang câu hỏi này →CORS (Cross-Origin Resource Sharing) là một kỹ thuật giúp cho các trang web có thể yêu cầu dữ liệu từ các nguồn khác nhau trên internet mà không bị chặn bởi chính sách bảo mật của trình duyệt. Mục đích chính của CORS là cho phép các yêu cầu từ một nguồn (origin) được phép truy cập vào các nguồn khác nhau. Điều này rất quan trọng vì nó cho phép các ứng dụng web có thể giao tiếp với nhau một cách an toàn và hiệu quả. Ví dụ, một trang web có thể yêu cầu dữ liệu từ một API khác mà không cần phải chuyển hướng qua một trang web trung gian. Điều này giúp giảm thiểu thời gian tải trang và cải thiện trải nghiệm người dùng.
AGET
BPOST with Content-Type: application/json
CDELETE
DOPTIONS
Lời giải
Mở trang câu hỏi này →Để xác định phương thức nào sẽ kích hoạt yêu cầu tiền kiểm tra (preflight request) trong CORS, chúng ta cần hiểu về cơ chế hoạt động của CORS. CORS (Cross-Origin Resource Sharing) là một cơ chế giúp cho các trang web có thể giao tiếp với nhau qua HTTP request, ngay cả khi chúng có nguồn gốc từ các miền khác nhau. Trong trường hợp này, khi một trang web muốn gửi một yêu cầu HTTP có phương thức khác GET (ví dụ như POST, PUT, DELETE) và có header hoặc body có chứa dữ liệu đặc biệt (ví dụ như Content-Type: application/json), thì trình duyệt sẽ kích hoạt một yêu cầu tiền kiểm tra trước khi gửi yêu cầu thực tế. Yêu cầu tiền kiểm tra này có phương thức là OPTIONS và sẽ chứa các thông tin về phương thức, header và body của yêu cầu thực tế.
7What is the default port for HTTPS?4 lựa chọnDễ
A80
B443
C8080
D8443
Lời giải
Mở trang câu hỏi này →HTTPS (HyperText Transfer Protocol Secure) là một giao thức truyền thông ứng dụng được sử dụng để truyền tải dữ liệu qua internet một cách an toàn. Default port cho HTTPS là 443. Điều này có nghĩa là khi bạn truy cập vào một trang web sử dụng HTTPS, trình duyệt web của bạn sẽ kết nối đến máy chủ web tại cổng 443 để tải xuống nội dung. Cổng 443 được sử dụng rộng rãi vì nó nằm trong phạm vi cổng được phân bổ cho giao thức TCP/IP, giúp tránh xung đột với các giao thức khác. Ngoài ra, việc sử dụng cổng 443 giúp tăng cường bảo mật cho giao thức HTTPS bằng cách ngăn chặn việc truy cập trái phép vào dữ liệu được truyền tải.
8What is OAuth primarily used for?4 lựa chọnDễ
AEncrypting data
BAuthenticating and authorizing users
CStoring user data
DValidating SQL queries
Lời giải
Mở trang câu hỏi này →OAuth là một phương thức xác thực và ủy quyền (authentication và authorization) phổ biến được sử dụng để cho phép các ứng dụng hoặc dịch vụ truy cập vào tài nguyên của một tài khoản khác mà không cần phải tiết lộ thông tin đăng nhập của tài khoản đó. OAuth giúp ngăn chặn việc lộ thông tin đăng nhập và giảm thiểu rủi ro bảo mật. Nó cho phép người dùng cho phép ứng dụng hoặc dịch vụ truy cập vào tài nguyên của họ mà không cần phải tiết lộ thông tin đăng nhập của họ. OAuth thường được sử dụng trong các ứng dụng web và di động để cho phép người dùng đăng nhập vào tài khoản của họ trên các ứng dụng khác mà không cần phải nhập lại thông tin đăng nhập.
9Which are not best practices in order to mitigate these risks when using Cross-origin resource sharing (CORS)?4 lựa chọnTrung bình
AUnrestricting Cross-Origin Access
BUsing appropriate HTTP methods
CValidating user input
DUsing CSRF protection mechanisms
Lời giải
Mở trang câu hỏi này →Khi sử dụng Cross-origin resource sharing (CORS), việc hạn chế truy cập từ nguồn gốc khác nhau là rất quan trọng để ngăn chặn các rủi ro. Trong các lựa chọn trên, có một số không phải là các thực hành tốt để giảm thiểu rủi ro này. Đầu tiên, việc không hạn chế truy cập từ nguồn gốc khác nhau (Unrestricting Cross-Origin Access) là một trong những nguyên nhân chính dẫn đến các rủi ro. Điều này cho phép bất kỳ ai cũng có thể truy cập vào tài nguyên của bạn, ngay cả khi họ không phải là nguồn gốc chính thức. Thứ hai, việc sử dụng các phương thức HTTP không phù hợp (Using inappropriate HTTP methods) cũng có thể dẫn đến các rủi ro. Ví dụ, nếu bạn sử dụng phương thức HTTP POST để thực hiện một hành động không an toàn, nó có thể dẫn đến các lỗ hổng bảo mật. Cuối cùng, việc không sử dụng các cơ chế bảo vệ CSRF (Using CSRF protection mechanisms) cũng là một nguyên nhân dẫn đến các rủi ro. Điều này cho phép các kẻ tấn công thực hiện các hành động giả mạo trên tài nguyên của bạn.
10What is the main purpose of HTTPS?4 lựa chọnDễ
ASpeed up web requests
BSecure communication over a network
CManage HTTP methods
DProvide dynamic routing
Lời giải
Mở trang câu hỏi này →HTTPS (HyperText Transfer Protocol Secure) là một giao thức truyền tải siêu văn bản an toàn, được sử dụng để truyền tải dữ liệu giữa máy chủ web và trình duyệt web. Mục đích chính của HTTPS là đảm bảo giao tiếp an toàn trên mạng. Điều này được thực hiện bằng cách mã hóa dữ liệu được truyền tải, ngăn chặn sự truy cập trái phép và bảo vệ thông tin cá nhân của người dùng. HTTPS sử dụng chứng chỉ SSL/TLS để xác thực danh tính của máy chủ web và mã hóa dữ liệu được truyền tải. Điều này giúp ngăn chặn các cuộc tấn công như nghe lén và giả mạo, đảm bảo rằng giao tiếp trên mạng là an toàn và đáng tin cậy.
ATo host the resource being requested
BTo issue tokens to clients after successfully authenticating the resource owner
CTo store user credentials
DTo provide an interface for user registration
Lời giải
Mở trang câu hỏi này →Trong khuôn khổ khung thức OAuth 2.0, vai trò của 'Authorization Server' là xác thực người dùng và cấp phát token cho các ứng dụng khách sau khi người dùng đã được xác thực thành công. Authorization Server đóng vai trò là một trung gian giữa người dùng và ứng dụng khách, giúp đảm bảo rằng người dùng đã được phép truy cập vào tài nguyên mà họ yêu cầu. Quá trình này bao gồm việc người dùng được yêu cầu nhập thông tin xác thực, sau đó Authorization Server sẽ xác thực thông tin đó và cấp phát token cho ứng dụng khách. Token này sẽ được sử dụng để truy cập vào tài nguyên mà người dùng đã được phép.
ASSL
BTLS
CBoth SSL and TLS
DHTTP
Lời giải
Mở trang câu hỏi này →SSL (Secure Sockets Layer) và TLS (Transport Layer Security) đều là các giao thức được sử dụng để đảm bảo giao tiếp an toàn trên web. SSL được phát triển ban đầu và được sử dụng rộng rãi trong những năm 1990, nhưng nó đã bị thay thế bởi TLS vào những năm 2000 do các vấn đề về bảo mật. TLS cung cấp các tính năng bảo mật mạnh mẽ hơn và khả năng tương thích rộng hơn so với SSL. Vì vậy, cả SSL và TLS đều được sử dụng để đảm bảo giao tiếp an toàn trên web.
13Which module is used for setting up your Express server to accept file uploads?4 lựa chọnTrung bình50% trả lời đúng
Apath
Bhttp
Cmulter
Dbody-parser
Lời giải
Mở trang câu hỏi này →Để thiết lập server Express của bạn để chấp nhận tải lên file, bạn cần sử dụng module nào? Module nào dưới đây được sử dụng để thiết lập server Express để chấp nhận tải lên file?
14How would you limit the number of files to 5 in a multiple file upload using Multer?4 lựa chọnTrung bình50% trả lời đúng
A
upload.array('files', 5)B
upload.single('files', 5)C
upload.limit(5)D
upload.multiple('files', 5)Lời giải
Mở trang câu hỏi này →Để giới hạn số lượng file được tải lên tối đa 5 file, bạn có thể sử dụng Multer với phương thức upload.array(). Phương thức này cho phép bạn tải lên nhiều file cùng một lúc và giới hạn số lượng file được tải lên.
15In addition to uploading a single file, multer also supports uploading multiple files in a single request. Which methods support to upload multiple files with multer?4 lựa chọnTrung bình67% trả lời đúng
A
upload.fields(..)B
upload.single(..)C
upload.array(..)D
upload()Lời giải
Mở trang câu hỏi này →Để tải nhiều tệp tin cùng một lúc với Multer, bạn có thể sử dụng các phương thức sau: upload.fields() và upload.array(). Phương thức upload.fields() cho phép bạn tải nhiều tệp tin với tên khác nhau, trong khi phương thức upload.array() cho phép bạn tải nhiều tệp tin với tên giống nhau. Ví dụ, nếu bạn muốn tải một tệp tin tên là ảnh và một tệp tin tên là file, bạn có thể sử dụng upload.fields() như sau: const upload = multer({ fields: [ { name: 'ảnh', maxCount: 1 }, { name: 'file', maxCount: 1 } ] });. Nếu bạn muốn tải nhiều tệp tin tên là ảnh, bạn có thể sử dụng upload.array() như sau: const upload = multer({ arrayKey: 'ảnh', maxCount: 5 });. Tóm lại, cả hai phương thức upload.fields() và upload.array() đều hỗ trợ tải nhiều tệp tin cùng một lúc với Multer.
16What does HTTPS stand for?4 lựa chọnTrung bình67% trả lời đúng
AHyperText Transfer Protocol Secure
BHyperText Transfer Protocol Simple
CHyperText Transfer Protocol Standard
DHyperText Transfer Protocol Script
Lời giải
Mở trang câu hỏi này →HTTPS là viết tắt của HyperText Transfer Protocol Secure, là một giao thức truyền tải siêu văn bản an toàn. Nó là một phiên bản được mã hóa của giao thức HTTP (HyperText Transfer Protocol), được sử dụng để truyền tải dữ liệu giữa máy chủ và trình duyệt web. HTTPS sử dụng chứng chỉ SSL/TLS để mã hóa dữ liệu, đảm bảo rằng dữ liệu được truyền tải an toàn và không bị truy cập trái phép. Điều này giúp bảo vệ thông tin cá nhân và bảo mật cho các giao dịch trực tuyến. Ngoài ra, HTTPS cũng giúp cải thiện uy tín và tin cậy của trang web, vì nó cho biết rằng trang web đó đã được chứng nhận và được bảo vệ bởi một tổ chức uy tín.
17What happens if CORS is not properly configured on the server?4 lựa chọnTrung bình67% trả lời đúng
AThe client receives an error in the browser console
BThe server crashes
CThe client application stops working
DThe server denies all incoming requests
Lời giải
Mở trang câu hỏi này →Nếu CORS không được cấu hình đúng trên máy chủ, điều đó có nghĩa là máy chủ không cho phép các yêu cầu từ nguồn khác nhau. Điều này có thể dẫn đến việc trình duyệt của khách hàng nhận được lỗi trong console. Lỗi này thường là do browser không thể gửi yêu cầu đến máy chủ vì nó không được phép. Điều này có thể gây ra sự cố trong việc tải dữ liệu từ máy chủ. Ngoài ra, nếu CORS không được cấu hình đúng, nó có thể dẫn đến việc dữ liệu không được tải đúng cách hoặc dữ liệu bị lỗi. Điều này có thể gây ra sự cố trong việc sử dụng ứng dụng của khách hàng.
18What is an SSL certificate?4 lựa chọnTrung bình67% trả lời đúng
AA digital certificate that authenticates a website's identity and enables an encrypted connection.
BA file that stores user credentials.
CA software that manages database transactions.
DA protocol for transferring files between servers.
Lời giải
Mở trang câu hỏi này →SSL (Secure Sockets Layer) chứng chỉ là một loại chứng chỉ số học mật mã học được sử dụng để xác thực danh tính của một trang web và cho phép kết nối mã hóa. Nó giúp đảm bảo rằng thông tin được truyền giữa trang web và người dùng được bảo mật và không bị truy cập trái phép. SSL chứng chỉ thường được sử dụng trong giao tiếp qua internet, chẳng hạn như khi người dùng truy cập vào trang web ngân hàng trực tuyến hoặc khi thực hiện giao dịch trực tuyến khác. Nó giúp tăng cường sự tin cậy và bảo mật cho giao tiếp trực tuyến.
19What refreshes an OAuth token?4 lựa chọnTrung bình60% trả lời đúng
ARefresh token grant
BAuthorization code
CPassword grant
DImplicit grant
Lời giải
Mở trang câu hỏi này →Để refresh một token OAuth, bạn cần sử dụng Refresh Token Grant. Refresh Token Grant cho phép bạn lấy một token mới bằng cách sử dụng một token refresh đã được cấp trước đó. Token refresh được cấp cùng với token truy cập khi bạn thực hiện một yêu cầu xác thực. Khi token truy cập hết hạn, bạn có thể sử dụng token refresh để lấy một token mới. Điều này giúp bạn tiếp tục truy cập vào các dịch vụ mà không cần phải thực hiện lại quá trình xác thực. Ngoài ra, Refresh Token Grant cũng cho phép bạn lưu trữ token refresh an toàn và sử dụng nó khi cần thiết.
20Which HTTP header specifies the domains allowed to access resources in CORS?4 lựa chọnTrung bình67% trả lời đúng
AAccess-Control-Allow-Methods
BAccess-Control-Max-Age
CAccess-Control-Allow-Origin
DAccess-Control-Allow-Headers
Lời giải
Mở trang câu hỏi này →Trong CORS (Cross-Origin Resource Sharing), HTTP header được sử dụng để chỉ định các miền được phép truy cập tài nguyên là Access-Control-Allow-Origin. Header này cho phép máy chủ web chỉ định các miền được phép truy cập tài nguyên của nó, giúp ngăn chặn truy cập không hợp lệ từ các miền khác. Ví dụ, nếu máy chủ web có miền example.com và muốn cho phép miền khác truy cập tài nguyên của nó, thì máy chủ web sẽ trả về HTTP header Access-Control-Allow-Origin với giá trị * hoặc miền cụ thể như example.com. Điều này giúp đảm bảo rằng tài nguyên của máy chủ web được truy cập an toàn và hợp lệ.