Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chí Minh
TRUNG TÂM TIN HỌC
Bài 4: Tương tác giữa Web Service với các Web Service khác
Ngành Mạng & Thiết bị di động
www.t3h.vn
2015
ộ
N i dung
́ ́ ơ ̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̃ ̃ ̀ ́ ́ ươ ̣ ư ư
2. H
́ ng dâ n lâ y d liêu t ca c Web Service kha c
̉ ̣
3. Bao mât trong Web services
Xây dựng và triển khai Web Service cho ứng dụng di động
2
́
́ ơ
̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
̀ ̀ API la gi ?
ệ ứ ụ ậ Application Programming Interface (API): Giao di n ng d ng l p
trình.
̀ ươ ứ ứ ụ ể Gô m ca c ́ ph ể ng th c đ cho các ng d ng bên ngoài có th
ọ ươ ể ổ g i, t ng tác đ trao đ i thông tin, tính toán.
ỗ ợ ữ ậ ạ ậ Giúp các nhà l p trình t o ra các service h tr nh ng l p trình
ể ươ ớ ứ ụ ủ viên khác có th t ng tác v i ng d ng c a chính mình .
ụ ứ ứ ể ấ ỗ M i ph n m m, ầ ề ng d ng có các cung c p các API đ các ng
ể ươ ụ ớ d ng khác có th t ng tác v i nó.
ủ ự ệ ầ ẩ Vi c xây d ng lên các API c n tuân th các chu n công ngh đ ệ ể
ể ử ụ ề ệ ề ả ượ ứ nhi u n n t ng công ngh có th s d ng đ c API mà ng
Xây dựng và triển khai Web Service cho ứng dụng di động
ụ ấ d ng cung c p.
3
́
́ ơ
̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̣ ̣ ̣ Môt sô API thông dung hiên nay
ệ ị Hi n nay , các d ch v c a ụ ủ Google , Facebook, BlackBerry,
ể ậ ấ ấ Yahoo, Amazon, … cung c p r t nhi u ề API đ l p trình viên có
́ ự ể ươ ữ ̣ ̣ th xây d ng t ng tác gi a website c a ủ mi nh̀ v i ớ ho. Vi du
nh :ư
• Google Play Service SDK (Google Cloud Messaging, Google Map
API, Nearby Messages, Mobile Vision API, …)
̉
• Facebook API • App42 Cloud API Services • BlackBerry Advertisting Service • Scribe Java API (tông h p: Facebook API, Google API, ợ Foursquare API, Foursquare2 API, Yahoo API, Twitter API, …)
• …
Xây dựng và triển khai Web Service cho ứng dụng di động
4
́
́ ơ
̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̣ ̣ ̣
ở ữ
ể
ị
Tích h p các d ch v Google đang s h u và phát tri n vào
ạ ộ
ụ
ứ
ế ị
ộ
trong các ng d ng ho t đ ng trên các thi
t b di đ ng.
Xây dựng và triển khai Web Service cho ứng dụng di động
(cid:0) Môt sô API thông dung hiên nay • Google Play Service SDK ụ ợ
5
́
́ ơ
̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̣ ̣ ̣ Môt sô API thông dung hiên nay
• Facebook API
ế ố
ử ụ
ụ
ứ
ộ
Cho phép các ng d ng s d ng các k t n i xã h i và các
ồ ơ ể
ụ
ứ
ớ
thông tin h s đ làm cho các ng d ng liên quan t
i nhau
ề
nhi u h n.
(cid:0)
ơ • App42 Cloud API Services ỗ ợ ế ố
ế ố
ề
ạ
ườ
ơ
H tr k t n i m ng, k t n i nhi u ng
ể ạ i ch i trong th lo i
ỗ ợ
ả
MultiPlay Game hay TurnBase Game và h tr qu n lý
ơ
ườ
ậ
ơ
phòng ch i, ng
i ch i, đăng kí, đăng nh p...
Xây dựng và triển khai Web Service cho ứng dụng di động
(cid:0)
6
́
́ ơ
̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̣ ̣ ̣ Môt sô API thông dung hiên nay
• BlackBerry Advertisting Service
ể ọ
ể
ể
ấ
Cung c p cho các nhà phát tri n đ h có th nhúng các
ụ
ủ
ứ
đo n mã qu ng cáo và ng d ng c a mình.
ạ ả • Scribe Java API ệ
ự
ẩ
ơ
ớ
t
(cid:0)
(cid:0) Giúp làm vi c v i OAuth d dàng h n, nó n đi s khác bi ệ ễ ị
ụ
ữ
ấ
gi a các nhà cung c p d ch v OAuth (Google, yahoo,
facebook, ...), và support OAuth 1a, OAuth 2.0
ấ
ẵ
Có s n các API cho các nhà cung c p khác nhau: Facebook
API, Google API, Foursquare API, Foursquare2 API, Yahoo
API, Twitter API, …
Xây dựng và triển khai Web Service cho ứng dụng di động
(cid:0)
7
ộ
N i dung
́ ́ ơ ̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̃ ̃ ̀ ́ ́ ươ ̣ ư ư
2. H
́ ng dâ n lâ y d liêu t ca c Web Service kha c
̉ ̣
3. Bao mât trong Web Services
Xây dựng và triển khai Web Service cho ứng dụng di động
8
́
̀ ̣ ư
̃ ư
́ ng dâ n lâ y d liêu t
ca c Web
̃ ́ ươ 2. H Service kha ć
Xây dựng và triển khai Web Service cho ứng dụng di động
9
ộ
N i dung
́ ́ ơ ̣ ̣ ̣
1. Gi
i thiêu môt sô API thông dung
́ ̃ ̃ ̀ ́ ́ ươ ̣ ư ư
2. H
́ ng dâ n lâ y d liêu t ca c Web Service kha c
̉ ̣
3. Bao mât trong Web Services
Xây dựng và triển khai Web Service cho ứng dụng di động
10
̉ ̣
3. Bao mât trong Web Services
̀ ̀ ̀ ̣ ̉ ̣ ̣ Web Services Security la môt mô hi nh bao mât toa n diên cho
Web Services.
́ ̣ ̣ Môt sô đinh danh trong Web Services Security:
́ ́ ́ ượ ̉ ̉ SOAP Services Security: cung câ p ca c chuân châ t l ng bao
́ ́ ̣ ử ợ ̣ ̣ ̉ ̣ ̣ mât – ti ch h p thông điêp, bao mât g i/ nhân thông điêp, xa c
̣ ̣ ̣ nhân thông điêp trên mang, …
́ ́ ư ̣ ̉ Vi du: ch ng chi X509, Kerberos, …
́ ̀ ̀ ở ượ ̣ ̣ Web Services Trust: xa c đinh tha nh phâ n m rông đ c xây
́ ́ ́ ̀ ̀ ự ̉ d ng trên Web Sercurity đê yêu câ u va cung câ p ca c kho a
́ ́ ́ ̉ ̣ ̉ ̉ ̣ ̣ bao mât đê quan ly ca c liên kê t/ quan hê tin cây, …
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ̣ Vi du: https://....
11
̉ ̣
3. Bao mât trong Web Services
̀ ự
́ ́ ơ ̣ ̉ ̣ ̣ Ca c c chê vân chuyên thông điêp tin cây (Reliable
(Sequences).
́ ượ
Messaging) Tuâ n t
Sô l
ng thông điêp (Message numbers).
̀
́
̣
Phan hô i kê t qua (Acknowledgments).
Message Persistence
̉ ̉
Transactions
́
́
́
̀
́
̀
́
́
ự
ợ
ư
Kha i niêm mô ta ca c hi nh th c phô i h p, điê u phô i th c hiên ca c
́
̣ ̉ ̣
ta c vu trên Web Service.
Phân loai:̣
Atomic Transaction (AT).
Business Activity (BA).
Xây dựng và triển khai Web Service cho ứng dụng di động
̣
12
̉ ̣
3. Bao mât trong Web Services
́
̀
̣ ̣
Ca c mô hi nh hoat đông Remote Procedure Calls Model
Representational State Stransfer (REST) Model
Message Oriented Model
Service Oriented Model
Resource Oriented Model
Xây dựng và triển khai Web Service cho ứng dụng di động
Policy Model
13
̉ ̣
3. Bao mât trong Web Services
́
̃
̉ ̣
ự Ca c li nh v c bao mât:
̀ ̉ ̣ ̣ •Bao mât ta i nguyên trên mang.
̉ ̣ ̣ ̉ •Bao mât viêc trao đôi thông tin.
́ ́ ́ ́ ́ ̀ ̀ ơ ượ ̣ •Ca c c chê , chi nh sa ch ra ng buôc ca c đô i t ́ ̀ ng va ta i
́ ̀ ̉ nguyên tham gia qua tri nh trao đôi thông tin:
́ ́ ́ Ca c chi nh sa ch cho phe p ́
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ́ ́ ́ ̣ Ca c chi nh sa ch bă t buôc
14
̉ ̣
3. Bao mât trong Web Services
̀ ́ ̉ ̣ ̉ ̉ ̣ Bao mât câ n đam bao ca c muc tiêu:
́ ́ ự ơ •C chê xa c th c (Authentications Machanisms)
́ ̀ ơ •C chê phân quyê n (Data Integrity and Data Confidentiality)
̀ ̃ ̀ ̀ ̃ ư ư ̣ ̣ ̣ •Toa n ven d liêu va an toa n d liêu (Integrity of Transaction
and Communications)
́ ̉ ư ̣ •Loai bo t ̀ chô i (NonRepudiation)
̀ ́ơ ̣ •An toa n v i thông điêp (End – To – End Integrity and
Confidentiality of Messages)
́ ́ ̉ ̣ •Kiêm soa t vê t giao dich (Audit Trails)
́ ́ ́ ́ ́ ự ̉ ̣ •Ca c chi nh sa ch bao mât cho ca c th c thi phân ta n
Xây dựng và triển khai Web Service cho ứng dụng di động
(Distributed Enforcement of Security Policy)
15
̉ ̣
3. Bao mât trong Web Services
́ ́ ̉ ̉ ̣ Ca c giai pha p bao mât:
́ ́ ơ •C chê xa c th c (Authentication) ự
́ ̃ ̃ư ̣ •Ma ho a d liêu (Encryption)
Xây dựng và triển khai Web Service cho ứng dụng di động
́ ̃ ́ ư •Ch ky sô (Digital Signature)
16
Xây dựng và triển khai Web Service cho ứng dụng di động