OAuth2 là gì? Ưu và nhược điểm, cách thức hoạt động

OAuth2 là gì mà được các nền tảng mạng xã hội nổi tiếng hàng đầu thế giới như Facebook, Google, Twitter ưa chuộng sử dụng? Ưu, nhược điểm cũng như cách thức hoạt động của OAuth2 ra sao? Lanit sẽ giúp các bạn tìm ra câu trả lời trong những chia sẻ ngày hôm nay nhé!

1. OAuth2 là gì?

OAuth2 là một tiêu chuẩn cho phép một website hoặc một ứng dụng có thể truy cập vào tài nguyên lưu trữ bởi các ứng dụng web khác thay cho người dùng.

Phiên bản kế nhiệm của OAuth này cho phép người dùng chia sẻ các ứng dụng tài nguyên với nhau một cách tự động mà không cần tới username và password. Nhờ đó, người dùng có thể bảo mật được thông tin tài khoản của mình và không cần sử dụng quá nhiều tài khoản trong quá trình làm việc.

oauth2 là gì
OAuth2 là phiên bản kế nhiệm của tiêu chuẩn OAuth

2. Mục đích của OAuth 2.0

OAuth2 được thiết kế nhằm thực hiện 4 mục đích chính. Bao gồm: Resource Owner, Client, Resource Server và Authorization Server. Trong đó,

Resource Owner:

Có nghĩa là chủ sở hữu tài nguyên, là người quản trị và được phép cấp quyền truy cập cho người khác vào tài nguyên của họ. Chẳng hạn: Bạn chia sẻ các thông tin cá nhân của mình như email, giới tính, số điện thoại, ngày sinh của mình lên một địa chỉ trang web nào đó hay các trang mạng xã hội. Những thông tin mà bạn chia sẻ được gọi là Resource Owner.

 

oauth 2.0 là gì
OAuth có 4 mục đích chính là Resource Owner, Client, Resource Server và Authorization Server

Client:

Nó là ứng dụng mà người dùng muốn truy cập vào. Tuy nhiên, Client cần được chia sẻ quyền truy cập và nó phải được xác thực bởi API.

Resource Server:

Tác vụ này thực hiện mục đích lưu trữ, quản lý các tài khoản mà người dùng tạo ra.

Authorization Server:

Nó có nhiệm vụ định danh và xác minh danh tính của người dùng để cấp mã access token thông báo truy cập đến cho ứng dụng. Trong một số trường hợp, Authorization Server có vai trò giống với Resource Server. Và trong Authorization Server, token là một đoạn mã được tạo ra ngẫu nhiên khi Client có yêu cầu cần xử lý. Gồm có Access token và Refresh token.

3. Luồng hoạt động của OAuth2

Luồng hoạt động của OAuth2 là gì? Chúng ta sẽ cùng tìm hiểu ngay bây giờ thông qua nền tảng mạng xã hội nổi bật nhất hiện nay – Facebook. Hãy để ý rằng, khi bạn truy cập vào địa chỉ trang Facebook. 

Bạn sẽ được dẫn tới trang đích của Facebook hoặc Google sẽ hiển thị ra các kết quả để bạn lựa chọn. Website sẽ yêu cầu bạn đăng nhập bằng địa chỉ email, password, số điện thoại,…để truy cập vào trang và sử dụng các dịch vụ trên trang.  

oauth2 là gì
Tóm tắt hoạt động của OAuth2

Khi các quyền sử dụng những thông tin trên được bạn cho phép, Facebook sẽ tạo ra một accesstoken cho các quyền đó. Và bạn có thể tương tác trên website. Đó chính là cách thức hoạt động của OAuth2 trên nền tảng Facebook. Và tương tự ở các nền tảng khác cũng như vậy.

Hãy quan sát sơ đồ luồng hoạt động của OAuth2 dưới đây để hiểu hơn về cách thức hoạt động của tiêu chuẩn này nhé!

oauth2 là gì

4. Ưu và nhược điểm của OAuth2

Không phải ngẫu nhiên, OAuth2 được sử dụng phổ biến và rộng rãi như hiện nay. Đặc biệt, tiêu chuẩn này còn được các nền tảng lớn nhất hiện nay như Facebook, Google sử dụng. Chúng ta hãy tìm hiểu về ưu, nhược điểm của OAuth2 để nắm rõ hơn về ứng dụng này nhé!

Ưu điểmNhược điểm
OAuth2 hoạt động dựa trên chứng chỉ bảo mật SSL. Nó có thể bảo vệ quyền riêng tư giữa trình duyệt và server web.

Sử dụng hạn chế trên trình duyệt Chrome vì nó xuất hiện những lỗ hổng bảo mật tạo điều kiện cho hacker tấn công.


Phiên bản 2.0 của OAuth có tính năng lưu token, giúp cho việc truy vấn người dùng thuận tiện và tốc độ nhanh hơn.

Khi tài khoản bị hack nó sẽ ảnh hưởng đến nhiều trang web cùng lúc.


Với OAuth2, bạn có thể truy cập vào dữ liệu của người dùng ngay cả khi authorization token hết hạn.



Trong trường hợp có phần mở rộng mô tả hệ thống, nó sẽ phát sinh các triển khai không tương tác. Đồng nghĩa với việc người dùng phải viết riêng các mã khi truy cập vào các web.


Cho phép chia sẻ các dữ liệu của người dùng mà không phải sử dụng đến tài khoản và pass đăng nhập.

Trên đây là những chia sẻ từ Lanit về OAuth2 là gì. Ưu, nhược điểm cũng như cách thức hoạt động của tiêu chuẩn OAuth2. Hy vọng các bạn đã hiểu hơn về tiêu chuẩn này và có những ứng dụng thiết thực nhất. Mọi thông tin cần giải đáp thêm về OAuth2, các bạn hãy truy cập liên hệ với LANIT qua Hotline hoặc truy cập website của chúng tôi nhé!

avata Hải

Triệu Huyền Trang

Triệu Huyền Trang chuyên gia 3 năm kinh nghiệm trong ngành Công Nghệ, Phần Mềm. Chuyên chia sẻ các kiến thức phần mềm mã nguồn, ứng dụng và thông tin về công nghệ hữu ích.

Chat với chúng tôi qua Zalo!
Chat với chúng tôi qua Zalo!