GIỚI THIỆU VỀ THƯƠNG MẠI ĐIỆN TỬ
Giới thiệu tổng quan về thương mại điện tử
1.1.1 Định nghĩa thương mại điện tử
Thương mại điện tử là hình thức mua bán hàng hóa và dịch vụ qua mạng toàn cầu Theo Luật mẫu về thương mại điện tử của UNCITRAL, thương mại điện tử được định nghĩa rộng rãi, bao gồm tất cả các giao dịch thương mại diễn ra trên nền tảng kỹ thuật số.
Thuật ngữ Thương mại cần được hiểu rộng rãi để bao quát mọi vấn đề liên quan đến quan hệ thương mại, bất kể có hợp đồng hay không Các quan hệ thương mại bao gồm giao dịch cung cấp hoặc trao đổi hàng hóa và dịch vụ, thỏa thuận phân phối, đại diện thương mại, cho thuê dài hạn, xây dựng công trình, tư vấn, đầu tư, cấp vốn, ngân hàng, bảo hiểm, thỏa thuận khai thác, liên doanh, và chuyên chở hàng hóa hoặc hành khách bằng các phương tiện khác nhau.
1.1.2 Các đặc trưng của thương mại điện tử
So với các hoạt động thương mại truyền thống, thương mại điện có một số điểm khác biệt cơ bản sau:
Các bên tiến hành giao dịch trong thương mại điện tử không tiếp xúc trực tiếp với nhau và không đòi hỏi phải biết nhau từ trước
Trong thương mại truyền thống, các bên thường gặp gỡ trực tiếp để thực hiện giao dịch, chủ yếu dựa vào các phương thức vật lý như chuyển tiền, séc hóa đơn và vận đơn Mặc dù có sử dụng các phương tiện viễn thông như fax và telex để trao đổi số liệu kinh doanh, nhưng việc áp dụng công nghệ điện tử chỉ nhằm mục đích truyền tải thông tin trực tiếp giữa hai đối tác trong cùng một giao dịch.
Thương mại điện tử mở ra cơ hội cho mọi người, từ những vùng xa xôi đến các đô thị lớn, tham gia vào thị trường giao dịch toàn cầu Điều này tạo điều kiện cho tất cả mọi người có cơ hội bình đẳng mà không cần phải có mối quan hệ quen biết trước.
Thương mại truyền thống diễn ra trong khuôn khổ biên giới quốc gia, trong khi thương mại điện tử hoạt động trên một thị trường toàn cầu không biên giới Điều này tạo ra sự cạnh tranh mạnh mẽ hơn trong môi trường thương mại quốc tế.
Thương mại điện tử đang phát triển mạnh mẽ, giúp máy tính cá nhân trở thành cầu nối cho doanh nghiệp tiếp cận thị trường toàn cầu Ngày nay, một doanh nhân mới thành lập có thể dễ dàng kinh doanh tại Nhật Bản, Pháp hay Mỹ mà không cần rời khỏi nhà, điều này tiết kiệm thời gian và công sức so với trước đây.
Trong giao dịch thương mại điện tử, sự tham gia của ít nhất ba chủ thể là điều cần thiết, trong đó không thể thiếu người cung cấp dịch vụ mạng và các cơ quan chứng thực.
Trong thương mại điện tử, ngoài các bên tham gia giao dịch như trong thương mại truyền thống, còn có sự xuất hiện của nhà cung cấp dịch vụ mạng và cơ quan chứng thực Những bên thứ ba này đóng vai trò quan trọng trong việc tạo ra môi trường cho các giao dịch thương mại điện tử Họ có nhiệm vụ chuyển giao và lưu trữ thông tin giữa các bên, đồng thời xác nhận độ tin cậy của các thông tin trong giao dịch.
Trong thương mại truyền thống, mạng lưới thông tin chỉ đóng vai trò là công cụ để trao đổi dữ liệu Ngược lại, trong thương mại điện tử, mạng lưới thông tin trở thành thị trường chính, nơi diễn ra các giao dịch và tương tác giữa người tiêu dùng và doanh nghiệp.
Thương mại điện tử đã tạo ra nhiều mô hình kinh doanh mới, trong đó nổi bật là dịch vụ thanh toán giữa các công ty thông qua Ebay Ebay hoạt động như một nhà trung gian ảo, facilitating thông tin và giao dịch giữa các đối tác.
1.1.3 Các cơ sở để phát triển thương mại điện tử Để phát triển thương mại điện tử cần phải có hội đủ một số cơ sở:
Hạ tầng kỹ thuật Internet cần phải nhanh và mạnh mẽ để truyền tải hiệu quả các nội dung thông tin, bao gồm âm thanh và hình ảnh sống động Một hệ thống Internet mạnh mẽ không chỉ cung cấp dịch vụ chất lượng mà còn cần phải có mức giá hợp lý, nhằm thu hút và tăng số lượng người dùng Internet.
Để phát triển thương mại điện tử, cần thiết phải có một hạ tầng pháp lý vững chắc, bao gồm luật công nhận tính pháp lý của chứng từ và hợp đồng điện tử ký qua mạng Đồng thời, cần thiết lập các quy định về bảo vệ quyền sở hữu trí tuệ, bảo vệ sự riêng tư và bảo vệ quyền lợi người tiêu dùng nhằm điều chỉnh các giao dịch trực tuyến hiệu quả.
Để đảm bảo an toàn và bảo mật, cần có cơ sở thanh toán điện tử đáng tin cậy Hệ thống thanh toán này bao gồm các phương thức như thẻ tín dụng, tiền điện tử và thẻ ATM trên nền tảng web Các ngân hàng trong nước cần triển khai rộng rãi hệ thống thanh toán điện tử này.
Phải có hệ thống cơ sở chuyển phát hàng nhanh chóng, kịp thời và tin cậy
Phải có hệ thống an toàn bảo mật cho các giao dịch, chống xâm nhập trái phép, chống virus, chống thoái thác
Để triển khai hiệu quả các hoạt động tiếp thị, quảng cáo, xúc tiến, bán hàng và thanh toán qua mạng, cần có đội ngũ nhân lực có kiến thức vững về kinh doanh, công nghệ thông tin và thương mại điện tử.
1.1.4 Các loại giao dịch chủ yếu trong thương mại điện tử
Trong thương mại điện tử, có ba chủ thể chính: Doanh nghiệp (B) đóng vai trò động lực phát triển, người tiêu dùng (C) quyết định sự thành công, và chính phủ (G) đảm nhận vai trò định hướng và quản lý Các loại giao dịch thương mại điện tử bao gồm B2B, B2C, B2G, C2G, và C2C, trong đó B2B và B2C là hai hình thức quan trọng nhất Nghiên cứu này sẽ tập trung vào mô hình B2B và B2C.
Business-to-business (B2B): Mô hình thương mại điện tử giữa các doanh nghiệp với doanh nghiệp
Cơ sở pháp lý cho việc phát triển thương mại điện tử
1.2.1 Sự cần thiết phải xây dựng khung pháp lý cho việc triển khai thương mại điện tử
Sự phát triển của thương mại điện tử đã làm thay đổi cách thức kinh doanh, nhưng cũng đặt ra nguy cơ rủi ro trong giao dịch Do đó, cần có giải pháp kỹ thuật và một cơ sở pháp lý đầy đủ Kinh nghiệm quốc tế cho thấy, để thúc đẩy thương mại điện tử, vai trò của Nhà nước rất quan trọng trong việc cung ứng dịch vụ điện tử và xây dựng hệ thống pháp luật rõ ràng để điều chỉnh quan hệ thương mại điện tử Thiếu cơ sở pháp lý vững chắc sẽ khiến doanh nghiệp và người tiêu dùng gặp khó khăn trong giải quyết vấn đề, đồng thời gây khó khăn cho cơ quan Nhà nước trong việc kiểm soát hoạt động thương mại điện tử.
Thương mại điện tử là một lĩnh vực mới, do đó việc xây dựng niềm tin cho các bên tham gia là rất cần thiết Để đạt được điều này, cần thiết lập một sân chơi chung với các quy tắc rõ ràng và chặt chẽ.
Trong bối cảnh hội nhập toàn cầu với tư cách là thành viên của APEC, Việt Nam đang tích cực hỗ trợ "Chương trình hành động chung" về "Thương mại phi giấy tờ" được triển khai từ năm 2005 cho các nước phát triển và năm 2010 cho các nước đang phát triển Đồng thời, Việt Nam tham gia vào lộ trình tự do hóa của Hiệp định khung e-ASEAN và tuân thủ "Các nguyên tắc chỉ đạo thương mại điện tử" đã được các quốc gia trong khối thông qua Do đó, việc đáp ứng các yêu cầu pháp lý quốc tế là cần thiết để Việt Nam hội nhập và theo kịp tiến trình phát triển của khu vực và thế giới.
1.2.2 Luật thương mại điện tử
1.2.2.1 Giá trị pháp lý của các chứng từ điện tử
Hiện nay, theo quy định của pháp luật Việt Nam, văn bản là hình thức chủ yếu trong các giao dịch dân sự, thương mại và đặc biệt là trong hợp đồng kinh tế, đóng vai trò bắt buộc Thương mại điện tử yêu cầu phải công nhận tính pháp lý của các giao dịch và chứng từ điện tử Nhà nước cần công nhận giá trị pháp lý của văn bản giao dịch qua phương tiện điện tử Pháp lệnh thương mại điện tử đang được soạn thảo nhằm giải quyết vấn đề này, trong đó đưa ra khái niệm văn bản điện tử và quy định riêng cho loại văn bản này Các hình thức thông tin điện tử phải được coi như văn bản có giá trị tương đương với văn bản viết nếu chúng đảm bảo các yếu tố cần thiết.
Khả năng chứa thông tin, các thông tin có thể được lưu giữ và tham chiếu lại khi cần thiết
Ðảm bảo đƣợc tính xác thực của thông tin
Ðảm bảo đƣợc tính toàn vẹn của thông tin
1.2.2.2 Giá trị pháp lý của chữ ký điện tử
Chữ ký từ lâu đã trở thành phương thức phổ biến để xác nhận tính xác thực của thông tin trong văn bản Đặc trưng cơ bản của chữ ký là
Chữ ký nhằm xác định tác giả của văn bản
Chữ ký là biểu tượng thể hiện sự đồng ý của tác giả đối với nội dung của văn bản Trong lĩnh vực thương mại điện tử, chữ ký điện tử được sử dụng như một hình thức xác nhận tương tự.
Chữ ký điện tử ngày càng trở nên quan trọng trong các văn bản điện tử Để đảm bảo tính an toàn và thể hiện rõ ý chí của các bên liên quan, chữ ký điện tử cần phải đáp ứng các yêu cầu về công nghệ và pháp lý.
Hiện nay, nhiều nghiên cứu và ứng dụng đã được triển khai trên toàn cầu để nhận dạng và chứng thực cá nhân, trong đó luật pháp quy định các yêu cầu về nhận dạng chữ ký điện tử Điều này cho phép các bên có ít thông tin về nhau có thể xác định chính xác chữ ký điện tử của đối tác Để đảm bảo độ tin cậy của chữ ký điện tử, một cơ quan trung gian sẽ được thành lập nhằm chứng thực tính xác thực và cung cấp dịch vụ pháp lý quan trọng Tại Việt Nam, chữ ký điện tử vẫn đang trong giai đoạn đầu phát triển, với quyết định số 44/2002/QĐ-TTg của Chính phủ vào tháng 3/2002 chấp nhận chữ ký điện tử trong thanh toán liên ngân hàng Đây là văn bản pháp lý cao nhất hiện hành về chữ ký điện tử tại Việt Nam, tuy nhiên, vẫn còn nhiều việc cần làm để phổ biến chữ ký điện tử trong giao dịch thương mại điện tử.
Thủ tướng Chính phủ ban hành Quyết định 222/2005/QĐ-TTg ngày 15/9/2005 phê duyệt kế hoạch tổng thể phát triển thương mại điện tử giai đoạn 2006 - 2010
Thương mại điện tử đã chính thức được pháp luật Việt Nam công nhận, với thông tin điện tử có giá trị pháp lý tương đương với tài liệu giấy truyền thống.
Vấn đề "bản gốc" trong kinh doanh điện tử gắn liền với "chữ ký" và "văn bản", thể hiện sự toàn vẹn của thông tin Trong giao dịch trực tuyến, bản gốc liên quan mật thiết đến chữ ký điện tử, không chỉ xác định người ký mà còn đảm bảo tính toàn vẹn của nội dung văn bản Sử dụng chữ ký điện tử đồng nghĩa với việc mã hóa tài liệu đã được ký kết.
Văn bản điện tử và văn bản truyền thống có giá trị pháp lý ngang nhau, điều này là cơ sở xác định giá trị chứng cứ của văn bản điện tử Việc công nhận giá trị chứng cứ của văn bản điện tử rất quan trọng cho sự phát triển thương mại điện tử Chỉ khi giá trị của văn bản điện tử được công nhận tương đương với văn bản truyền thống, các bên trong giao dịch thương mại điện tử mới thường xuyên sử dụng văn bản điện tử Tuy nhiên, giá trị của văn bản điện tử chỉ được xác nhận khi nó đảm bảo các yếu tố đã nêu trước đó.
Việc xây dựng khung pháp lý cho thương mại điện tử là rất cấp thiết để đảm bảo sự phát triển mạnh mẽ và hoàn thiện của lĩnh vực này Thương mại điện tử cần một môi trường pháp lý đầy đủ để hoạt động hiệu quả Theo kế hoạch năm 2005, Việt Nam đã công bố Chính phủ Pháp lệnh về thương mại điện tử, và vào tháng 3 năm 2006, Luật Giao dịch điện tử, bao gồm cả Luật thương mại điện tử, sẽ chính thức có hiệu lực.
1.2.3 Luật bảo vệ sự riêng tư trong thương mại điện tử
Quyền riêng tư là những bí mật cá nhân được pháp luật bảo vệ, miễn là không vi phạm luật pháp Tuy nhiên, quyền riêng tư có tính tương đối và cần được cân bằng với lợi ích xã hội, trong đó lợi ích của cộng đồng luôn được ưu tiên hơn quyền lợi của từng cá nhân.
Trong thương mại điện tử, cá nhân và tổ chức cần đảm bảo tính riêng tư, bao gồm việc bảo mật thông tin về hàng hóa mua bán và thanh toán Cả người mua lẫn người bán đều phải tôn trọng sự riêng tư này để tạo dựng niềm tin và bảo vệ quyền lợi của nhau.
Thương mại điện tử, với đặc điểm kinh doanh qua mạng, đòi hỏi việc bảo vệ sự riêng tư trở thành một vấn đề thiết yếu, ảnh hưởng đến cả khía cạnh pháp lý lẫn công nghệ.
Các hình thức thanh toán trong thương mại điện tử
1.3.1 Thanh toán thông qua thẻ tín dụng
Trong thương mại điện tử, thanh toán qua thẻ tín dụng là phương thức phổ biến nhất nhờ tính đơn giản và nhanh chóng Khách hàng chỉ cần nhập thông tin thẻ tín dụng vào một form an toàn (được mã hóa SSL) để gửi cho nhà thanh toán trung gian Thông tin này sẽ được chuyển đến ngân hàng xử lý thanh toán, và nếu thông tin thẻ hợp lệ, giao dịch sẽ được thực hiện Các hình thức thanh toán qua thẻ tín dụng chủ yếu bao gồm:
1.3.2 Thanh toán thông qua nhà trung gian thứ 3
Thanh toán qua nhà trung gian thứ 3 phải thoả các tiêu chí sau:
Nhà trung gian thanh toán trực tuyến cần có uy tín toàn cầu, đồng thời áp dụng các biện pháp bảo mật hiệu quả để đảm bảo an toàn cho mọi giao dịch.
Cung cấp thông tin chính xác và kịp thời cho đơn đặt hàng từ khách hàng nước ngoài là rất quan trọng Nếu thông tin không đến tay khách hàng đúng lúc, doanh nghiệp có thể không chuẩn bị đủ hàng hóa cần thiết, dẫn đến mất uy tín với khách hàng và đối tác Điều này đặc biệt nghiêm trọng trong giao dịch với đối tác nước ngoài, nơi thời gian được xem là rất quan trọng.
Chi phí giao dịch thấp nhất cùng với chất lượng dịch vụ tốt nhất sẽ mang lại sự tiện lợi cho các giao dịch trong tương lai, đặc biệt khi có sự hỗ trợ và liên hệ với hệ thống ngân hàng trong nước.
Khi chọn đối tác làm nhà thanh toán trung gian, doanh nghiệp cần hiểu biết về các phương thức bảo mật và nghiên cứu kỹ lưỡng về đối tác, đặc biệt là độ tin cậy trong hình thức thanh toán Một số nhà thanh toán trung gian nổi tiếng và uy tín trên thế giới mà doanh nghiệp có thể hợp tác bao gồm E-gold, 2Checkout, Paypal và Worldpay.
1.3.3 Thanh toán thông qua các ISP
ISP là những nhà cung cấp dịch vụ mạng và thường đóng vai trò là trung gian thanh toán giữa doanh nghiệp và khách hàng Do đó, khi doanh nghiệp chọn hình thức thanh toán qua ISP, cần chú ý đến các yêu cầu quan trọng.
Cấu hình hệ thống trên máy chủ web cần phải được thiết lập một cách an toàn để ngăn chặn những sơ suất có thể xảy ra, giúp hạn chế khả năng hacker khai thác dữ liệu dễ dàng từ host.
Để đảm bảo hệ thống mạng luôn ổn định, cần thường xuyên theo dõi hoạt động của nó và nhanh chóng khắc phục các sự cố phát sinh.
Cập nhật các chương trình chống Virus, Spy… bản vá lỗi (patch) của hệ điều hành mà hosting đang sử dụng
Hỗ trợ doanh nghiệp kịp thời khắc phục các sự cố có thể xảy ra
1.3.4 Thanh toán ngay trên trang web của doanh nghiệp
Chỉ những doanh nghiệp có hệ thống thanh toán đủ năng lực thực hiện thanh toán bù trừ với trung tâm bù trừ mới nên xem xét hình thức này Thường là các tổ chức lớn, uy tín với công nghệ hiện đại và bảo mật cao Do tính nhạy cảm của thông tin, đặc biệt là dữ liệu thẻ tín dụng, doanh nghiệp cần cân nhắc kỹ lưỡng trước khi quyết định áp dụng phương thức thanh toán này.
1.3.5 Thanh toán thông qua các hình thức giản đơn trong nước
1.3.5.1 Thanh toán thông qua thẻ ATM và chuyển khoản ngân hàng Đây là trường hợp khách hàng thanh toán thông qua thẻ ATM của Ngân hàng Ngoại thương (Vietcombank - VCB) hay từ bất kỳ một hệ thống máy ATM của Ngân hàng nào chấp nhận cho chuyển khoản qua hệ thống của VCB và ngƣợc lại
Ngoài cách chuyển khoản này còn có hình thức chuyển khoản số tiền tương đối lớn ngay tại quầy giao dịch thay vì chuyển bằng thẻ ATM
1.3.5.2 Thanh toán thông qua chuyển tiền Bưu điện
Thanh toán qua gửi thư bảo đảm (chuyển phát nhanh) là phương thức phổ biến tại Việt Nam, thường được sử dụng cho các giao dịch có số lượng hàng hóa và giá trị không lớn Hình thức này mang lại sự thuận lợi, nhanh chóng, chính xác và an toàn cho người sử dụng.
1.3.5.3 Thanh toán thông qua thẻ do doanh nghiệp phát hành
Doanh nghiệp có thể phát hành thẻ với nhiều mệnh giá khác nhau như 50.000 VND, 100.000 VND, và 200.000 VND, và bán chúng qua các đại lý giống như thẻ điện thoại di động Mỗi thẻ bao gồm thông tin về loại thẻ, mệnh giá, màu sắc, hạn dùng, tên công ty phát hành và số xác nhận Các thẻ khác nhau sẽ có mệnh giá và màu sắc riêng để phân biệt Công ty sẽ quản lý và cập nhật cẩn thận thông tin thẻ trong cơ sở dữ liệu sau mỗi giao dịch của khách hàng Khi thanh toán, người dùng cần nhập 4 số ngẫu nhiên từ tổng số 10 ký tự trên thẻ vào các vị trí tương ứng.
Khi sử dụng thẻ, trình duyệt sẽ yêu cầu bạn nhập số thẻ ở các vị trí 1, 4, 5 và 9 Bạn cần xem trên thẻ và điền chính xác các số tương ứng Nếu trong quá trình thanh toán xảy ra sự cố, trang web sẽ yêu cầu bạn nhập 4 số ở các vị trí khác nhau so với lần trước Điều này có nghĩa là mỗi lần thực hiện giao dịch, bạn sẽ cần nhập 4 số ở các vị trí khác nhau.
1.3.5.4 Giao hàng và nhận tiền ngay Đây là phương thức thanh toán truyền thống và rất thịnh hành ở Việt Nam hiện nay Kiểu thanh toán “tiền trao cháo múc” rất được người dân chúng ta hoan nghênh, vừa nhanh gọn vừa sòng phẳng Tuy nhiên trong tương lai hình thức này sẽ dần dần bị thay thế bởi các hình thức trên.
Các hình thức bảo mật trong thương mại điện tử
1.4.1 Hacker và các thủ đoạn tấn công của hacker
Hacker là những người có kiến thức sâu rộng về hệ thống máy tính và đóng góp tích cực cho sự phát triển của cộng đồng công nghệ Họ xứng đáng được trân trọng khi hoạt động vì lợi ích chung Tuy nhiên, cũng tồn tại những hacker với mục đích xấu, gây ra vấn đề cho thương mại điện tử Để có thể sống chung với họ, chúng ta cần nhận thức rõ về các thủ thuật khai thác của hacker nhằm tìm ra biện pháp ngăn chặn và hạn chế tác hại.
Một số cách thức mà hacker thường sử dụng để tấn công vào mạng doanh nghiệp:
Khai thác từ các ứng dụng web (Web Applications) có thể dẫn đến những rủi ro nghiêm trọng cho doanh nghiệp Ứng dụng web là chương trình hoạt động trên máy chủ và nếu nó có chất lượng kém hoặc bảo mật yếu, hacker có thể dễ dàng khai thác để "leo thang đặc quyền", chiếm quyền kiểm soát hosting và hệ thống Những lỗi phổ biến như SQL Injection và khai báo includes_path sai có thể cho phép kẻ tấn công truy cập sâu vào server Thêm vào đó, nhiều quản trị viên thường đặt mật khẩu cho ứng dụng web và server giống nhau, tạo ra lỗ hổng bảo mật nghiêm trọng.
Khai thác từ hệ thống máy chủ có thể dẫn đến những lỗi nghiêm trọng, đặc biệt là những lỗ hổng bảo mật trong hệ điều hành như Linux và Windows Những lỗi này có khả năng cho phép kẻ tấn công chiếm dụng Server, với các ví dụ điển hình như lỗ hổng trong phiên bản 5.0 của Internet Information Server (IIS) của Microsoft, cũng như các lỗi trong Apache và Perl, đều là mã nguồn mở.
Hacker thường khai thác những sơ hở từ chính người quản trị hệ thống, như việc thiết lập cấu hình máy chủ không đúng, sử dụng mật khẩu dễ đoán hoặc đặt mật khẩu dựa trên thông tin cá nhân như số điện thoại hay số nhà.
Nếu các phương pháp tấn công không đạt hiệu quả như mong muốn, hacker có thể thực hiện tấn công DOS (Denial of Service) hoặc DDOS (Distributed Denial of Service) nhằm làm "chết" mạng của doanh nghiệp Đây là những hình thức tấn công rất nguy hiểm và khó phòng ngừa nếu không có sự chuẩn bị từ trước.
Mô hình tấn công DDoS cho thấy hacker thực hiện cuộc tấn công vào mục tiêu bằng cách huy động các máy tính bị nhiễm (zombies) để biến chúng thành công cụ tấn công dưới sự điều khiển của mình.
1.4.2 Các hình thức phòng vệ
Phòng vệ trong ứng dụng thương mại điện tử là yếu tố quan trọng giúp doanh nghiệp tránh những sự cố không mong muốn Việc có biện pháp phòng vệ hiệu quả không chỉ giảm thiểu rủi ro mà còn tăng khả năng phục hồi nhanh chóng khi xảy ra sự cố.
Tường lửa (firewall) là một tập hợp các chương trình liên kết, được cài đặt trên máy chủ như một cổng gác giữa mạng doanh nghiệp và Internet, nhằm bảo vệ thông tin riêng tư của người dùng trong mạng Việc cài đặt firewall là cần thiết để ngăn chặn truy cập trái phép vào dữ liệu của công ty, đồng thời quản lý quyền truy cập Internet của nhân viên Trong bối cảnh tội phạm mạng ngày càng gia tăng và tinh vi, firewall đóng vai trò quyết định trong hoạt động thương mại điện tử, đặc biệt trong việc ngăn chặn các cuộc tấn công từ chối dịch vụ (DOS) và tấn công phân tán (DDOS).
Mô hình hoạt động của tường lửa yêu cầu mọi thông tin ra vào phải được kiểm soát chặt chẽ, nhằm đảm bảo an toàn tuyệt đối cho doanh nghiệp.
Để bảo vệ website khỏi các mối đe dọa từ hacker, việc thiết lập các giao thức bảo mật như SSL (Secure Socket Layer) là rất cần thiết, đặc biệt trong quá trình đăng nhập vào hệ thống quản trị Điều này giúp ngăn chặn khả năng bị "nghe trộm" thông tin truyền tải trên mạng.
Mã hóa cơ sở dữ liệu là biện pháp quan trọng nhằm giảm thiểu khả năng nhận diện thông tin trong trường hợp hệ thống bị xâm nhập Việc mã hóa cần được thực hiện đối với thông tin nhạy cảm như mật khẩu của cả quản trị viên hệ thống và khách hàng.
Khi thiết lập website thương mại điện tử cho doanh nghiệp, cần chú ý đến khả năng bị khai thác các lỗi bảo mật Đảm bảo rằng hệ thống máy chủ luôn được cập nhật mới và cài đặt đầy đủ các phần mềm diệt virus, trojan cùng các phần mềm độc hại khác để bảo vệ an toàn cho website.
TÌM HIỂU VỀ NGÔN NGỮ ASP
Tìm hiểu sơ lƣợc về ASP
Microsoft Active Server Page (ASP) không phải là ngôn ngữ lập trình mà là môi trường kịch bản trên máy chủ, cho phép chạy các ứng dụng Web động và tương tác Môi trường này giúp tạo nội dung trang Web linh hoạt hơn, mang đến trải nghiệm khác nhau cho người dùng khi truy cập Với sự hỗ trợ của các đối tượng có sẵn và các ngôn ngữ kịch bản như VBScript và JavaScript, ASP cung cấp một giao diện lập trình mạnh mẽ và dễ dàng cho việc triển khai ứng dụng Web.
An ASP page combines HTML components, ActiveX controls, and ASP scripts, functioning as an HTML page enhanced with additional ASP scripting commands.
Microsoft đã phát triển Active Server Pape (ASP) nhƣ một kiến trúc Server – side dùng để xây dựng các ứng dụng Web động
ASP cung cấp một cách làm mới để tạo trang Web động ASP không phải là một kỹ thuật mới nhƣng nó sử dụng dễ dàng và nhanh chóng
ASP sẽ tham vấn trực tiếp vào Browser gửi dữ liệu đến Server và từ đây sẽ đƣa lên mạng
Trong khi ASP thực thi trên máy mà nó hỗ trợ dùng, thì ta có thể xem ASP từ bất cứ máy nào với Browser nào
ASP cung cấp giao diện lập trình nhanh chóng và dễ dàng để triển khai ứng dụng Ứng dụng ASP thường bao gồm các trang ASP, trang HTML và các thành phần khác trong một thư mục được khai báo với Web Server, và thư mục này cần được gán quyền Executives hoặc Script để hoạt động đúng Trong thư mục, có một tệp tin đặc biệt là Global.asp, được sử dụng để chia sẻ thông tin trong toàn bộ ứng dụng.
Web Server là nơi tiếp nhận và xử lý yêu cầu từ người dùng Web, đồng thời kết nối với Database Server để truy cập dữ liệu cho trang ASP ADO cung cấp giao diện lập trình cho phép phát triển các lệnh truy cập DBMS, những lệnh này được gửi đến hệ DBMS thông qua OLE DB và ODBC Kết quả truy vấn dữ liệu sau đó sẽ được hiển thị trên trình duyệt bởi Web Server.
ASP can operate with Microsoft Internet Information Server (IIS) versions 3.0 and 4.0, as well as Microsoft Personal Web Server 4.0, enabling the use of its features and accompanying ActiveX components.
Thao tác giữa Client và Server trong một ứng dụng Web có thể đƣợc thể hiện khái quát nhƣ sau:
A database server is responsible for executing various database operations such as querying and updating, while also ensuring the integrity of the data within the Database Management System (DBMS).
Trình duyệt là giao diện người dùng, tiếp nhận và hiển thị các yêu cầu của người dùng Nó cũng thực hiện kiểm tra sơ bộ tính hợp lệ của dữ liệu trước khi gửi đến máy chủ web.
Common gateway interface (CGI) là một quy trình quản lý tương tác giữa phần mềm Web Server và trình Browser
CGI hoạt động bằng cách gửi yêu cầu đến Server, nơi mà CGI script sẽ xử lý thông tin thông qua các phương thức như POST, GET và HEAD, sau đó trả kết quả về cho Server.
ASP được biên dịch thành chuẩn ActiveX Scripting, và nó tồn tại dưới dạng các tập tin *.asp được lưu trữ dưới định dạng text, HTML hoặc HML Khi một trình duyệt yêu cầu một tập tin có đuôi asp, IIS sẽ chuyển tiếp yêu cầu này đến ASP để xử lý.
Bạn có thể soạn thảo tập tin có đuôi asp bằng bất kỳ loại văn bản nào, nhưng để đạt được kết quả tốt nhất, nên sử dụng các công cụ thiết kế như Frontpage hoặc Visual Interdev.
Fontpage cho phép ta thêm ASP vào trang Web dùng mệnh lệnh insert script
Visual InterDev là môi trường phát triển đặc biệt cho ASP, cho phép thiết kế và kiểm tra lỗi kịch bản Kịch bản ASP chạy trên server và trả về kết quả dưới dạng trang HTML cho trình duyệt Với khả năng hoạt động trên Internet, kịch bản ASP có thể được sử dụng ở bất kỳ đâu mà không cần trình biên dịch Được viết bằng ngôn ngữ hướng đối tượng, ASP sử dụng các đối tượng như Request, Response, Application, Server và Session, đồng thời tận dụng các thành phần ActiveX như Database.
Web Server đóng vai trò quan trọng trong việc cung cấp dịch vụ Web trên Internet hoặc Intranet Nó là một máy tính chuyên dụng tạo ra và hiển thị các trang Web, cho phép người dùng dễ dàng truy cập thông tin trực tuyến.
Kịch bản ASP thường chỉ hoạt động trên các Server cài IIS, nơi mà khi người dùng gửi yêu cầu tới tập tin asp, script trong tập tin sẽ chạy trên server và trả về trang HTML cho trình duyệt Với môi trường Internet, kịch bản ASP có thể sử dụng ở bất kỳ đâu mà không cần trình biên dịch hay kết nối Được viết bằng ngôn ngữ hướng đối tượng, ASP cung cấp các đối tượng như Request, Response, Application, Server và Session, cho phép tận dụng các thành phần ActiveX như Database Access.
Content linking enhances collaboration through the use of Data Objects, enabling improved browser capabilities and file access Additionally, it leverages components from various distributors, provided in the form of dll files, to maximize functionality and integration.
ASP mang lại nhiều lợi ích thực tiễn, cho phép phát triển các ứng dụng Web thương mại tương tác, vượt ra ngoài việc chỉ hiển thị nội dung tĩnh như các trang HTML thông thường Ví dụ, bạn có thể sử dụng ASP để tạo cơ sở dữ liệu khách hàng trên máy chủ, giúp lưu trữ thông tin về những khách hàng đã đăng ký mua sách, từ đó dễ dàng tra cứu và đối chiếu khi cần thiết.
- Đọc những yêu cầu từ Browser
- Tìm trang cần thiết trong Server
- Thực hiện bất cứ những giới thiệu đã cung cấp trong ASP để cập nhật vào trang Web
- Sau đó gửi trả về cho Browser
2.1.3 Lợi ích của việc sử dụng ASP
Tất cả các ứng dụng đều có thể thực thi trên Server với phần điều khiển hoàn tất những gì đƣợc gửi đến cho Browser
- ASP không phải là ngôn ngữ mới
- ASP có thể đƣợc ghi vào trong ngôn ngữ Vbscript, Jscript
- ASP không phải là công cụ phức tạp
- Mặc dù tồn tại những công cụ phát triển mạnh, ASP vẫn có thể đƣợc tạo để sử dụng cho phần thiết kế HTML
- Script debugging hỗ trợ tương tác (interactive) cho việc kiểm tra lỗi của cả hai loại Client và Server Độ tin cậy:
- Không nhƣ Client- side scripting và các thành phần khác (components), ASP không thay đổi và chỉ chạy trên Server
- Không thể xem ASP trên trình duyệt Browser mà chỉ có thể xem trên HTML
Cấu trúc và cách tạo trang ASP
Trang ASP đơn giản là trang văn bản với phần mở rộng là asp gồm ba phần:
- Các đoạn kịch bản ASP
Để chuyển đổi một trang HTML thành trang ASP, bạn chỉ cần thêm các lệnh kịch bản ASP cần thiết và thay đổi phần mở rộng của tệp thành asp.
Trong các trang HTML, mỗi thẻ HTML đƣợc bắt đầu và kết thúc bởi cặp
Khi thêm đoạn kịch bản vào HTML để xác định vị trí bắt đầu và kết thúc của kịch bản ASP, bạn sử dụng cặp lệnh .
Chào một ngày mới:
Các đoạn mã lệnh ASP có thể xuất hiện ở khắp mọi nơi trong HTML Giữa chúng có sự gắn bó chặt chẽ với nhau
Các lệnh nằm giữa cần sử dụng ngôn ngữ viết kịch bản chính thức quy định cho trang ASP VBScript là ngôn ngữ mặc định cho ASP, nhưng nếu muốn sử dụng ngôn ngữ khác, chúng ta phải định nghĩa ngôn ngữ đó ở đầu mỗi trang ASP bằng cú pháp .
Các mã lệnh được chèn vào trang web và xử lý theo thứ tự Mã lệnh này bao gồm các kịch bản, trong đó ASP hỗ trợ hai loại: VBScript và JavaScript Lựa chọn loại kịch bản được thực hiện ngay ở dòng đầu tiên của tập tin.
Những đoạn mã không phân biệt dài, ngắn đƣợc đặt trong dấu hiệu Các biến không cần khai báo mà tự xác định khi gán giá trị cho nó
Muốn in ra các biến trong Web, sử dụng mã sau:
Để làm việc với hệ thống tập tin, thao tác với Database =>cần phải sử dụng các đối tƣợng ActiveX của ASP hay cài đặt thêm vào
Còn như thích lấy các giá trị truyền từ Client lên, dùng phương thức Request
Ví dụ: s= request(“Company”) => Lấy giá trị của biến Company.
Giới thiệu các đối tƣợng (object) và thành phần (component) xây dựng sẵn của ASP 25 1 Request Object
Đối tượng trong lập trình là các đoạn chương trình có khả năng thực hiện các công việc cơ bản, kết hợp giữa lập trình và dữ liệu để hoạt động như một đơn vị thống nhất Các đối tượng ASP cho phép giao tiếp và tương tác hiệu quả với máy chủ (Web Server) và trình duyệt (browser), thường được sử dụng trong các kịch bản lập trình.
Active Server Object có 6 Objects chính:
Sơ đồ mối quan hệ giữa các đối tƣợng của ASP: Đối tƣợng Application Đối tƣợng Session (1 user) Đối tƣợng Session (1 user)
Internet Information Server I/O: Đối tƣợng Request và Reponse
Liên lạc với Browser qua Internet
Liên lạc qua IIS, chia sẻ thông tin giữa các người sử dụng Quản lý quá trình và tài nguyên của ứng dụng Đọc thông tin từ
Cập nhật thông tin từ Aplication
Request và Response được xác định tự động, trong đó Request được tạo ra thông qua việc nhập liệu từ một trang HTML, còn Response là kết quả trả về từ Server cho trình duyệt.
Server dùng để cung cấp nhiều chức năng nhƣ tạo một Object mới
Application và Session dùng để quản lý thông tin về các ứng dụng đang chạy trong chương trình
Object context dùng với Microsoft transaction Server
Cho phép lấy thông tin theo yêu cầu HTTP, bao gồm các tham số biểu mẫu (Form) được đệ trình bằng phương thức Post hoặc Get, cũng như các tham số chia sẻ trên trang ASP Đối tượng Request được sử dụng để chia sẻ thông tin giữa các trang ASP trong các ứng dụng khác nhau.
Việc trao đổi bên ngoài từ Server bị quay trở về nhƣ một phần của kết quả (Response) Request tập trung nhiều đến phần lưu trữ thông tin
Toàn bộ Request object: Gồm có 5 loại
QueryString: Lưu trữ một tập những thông tin để vào địa chỉ cuối (URL)
Form: Lưu trữ một tập tất cả các biến gửi đến HTTP request
Cookies: Chứa tập tin các cookie chỉ đọc gửi đến bằng Client Browser với yêu cầu
ClientCertificate Khi Client tạo một tập với một Server yêu cầu sự bảo mật cao
ServerVarialbles: Khi client gửi một yêu cầu và thông tin đƣợc đƣa tới
Server, nó không chỉ gửi qua mà còn thông tin việc ai tạo trang, tên Server và cổng mà yêu cầu gửi đến
Ví dụ:
Response Object: Cung cấp những công cụ cần thiết để gửi bất cứ những gì cần thiết trở về Client
2.4.2 Tập các Response object Đối tượng Response là chìa khoá để gửi thông tin tới người dùng, là đại diện cho phần thông tin do Server trả về trình duyệt Web Chúng ta có thể viết lên màn hình, tái định hướng các trang (chuyển trình duyệt đến URL khác), tạo hoặc thiết lập các COOKIE trên máy khách
Ví dụ: Tạo một cookie trên máy Client
Response.Cookie (“BookBought”) = (“Beginning ASP”
Những đặc tính có thể dùng:
Domain : Một cookie chỉ đƣợc gửi đến trang đã yêu cầu bên trong vùng từ nơi nó đƣợc tạo
Path: Một cookie chỉ được gửi đến trang đã yêu cầu bên trong đường dẫn này
Haskeys: Định rõ cookie sử dụng một trong hai loại: Index/dictionary object hay là không dùng
Secure: Định rõ cookie là an toàn Một cookie an toàn là nếu gửi qua giao thức HTTP
Những phương thức của Response Object:
Write: Ghi biến, chuỗi, cho phép ta gửi thông tin trở về Browser
Addheader: Cho phép ta thêm hoặc thay đổi giá trị ở phần đầu HTTP
AppendToLog: Cho phép thêm một chuỗi vào bản ghi tập tin của Web
Server, cho phép thêm tùy ý các thông điệp vào bản ghi tập tin
BinaryWrite: Cho phép ta chuyển đổi vòng các ký tự thường khi dữ liệu đƣợc gửi trở về Client
Clear: Cho phép ta xóa bỏ bất cứ vùng nhớ bên ngoài HTML
End: Cho phép ngừng việc xử lý tập tin ASP và dữ liệu đệm thêm hiện thời quay trở về Browser
Flush: Cho phép dữ liệu đệm hiện thời quay trở về Browser và giải phóng bộ đệm
Redirect: Cho phép ta bỏ qua sự điều khiển của trang hiện thời nối kết vào trang Web khác
If (Not session (“LoggedOn”)) Then Response.Redirect “login Asp”
Những đặc tính của Response Object:
CacheControl: Xác định Proxy Server đƣợc cho phép phát sinh ra do ASP Charset: Nối thêm tên ký tự vào đầu content- type
ContenType: HTTP content type cho phần trả lời
Expires: Số lần phát sinh giữa lần lưu trữ và phần kết thúc cho một trang lưu trữ trên Browser
IsClientConnected: Client ngƣng việc kết nối từ Server
Mỗi ứng dụng đƣợc trình bày bởi một application object Đây là đối tƣợng đƣợc chứa các biến và các đối tƣợng cho phạm vi ứng dụng cách dùng
Content: Chứa tất cả các mẫu tin thêm vào ứng dụng thông tin qua các lệnh script Những phương thức của Application Object:
Lock: Ngăn chặn các Client khác từ việc cập nhật đặc tính ứng dụng
Unlock: Cho phép các Client cập nhật đặc tính ứng dụng
Những sự kiện của Application Object:
OnStart: Xảy ra khi trang Web trong ứng dụng đƣợc tham chiếu lần đầu OnEnd: Xảy ra các ứng dụng kết thúc, khi Web Server ngƣng hoạt động
Session Object: Được dùng để kiểm tra Browser khi nó điều hướng qua trang Web
Cung cấp phương tiện truy cập đến các phương thức và thuộc tính trên Server, cho phép thực thi chuỗi tác vụ như ánh xạ đường dẫn ảo tới đường dẫn vật lý Phương thức Server.CreateObject thường được sử dụng để khởi tạo phiên bản của đối tượng ActiveX trên trang ASP.
Lưu trữ thông tin cần thiết trong phiên làm việc của người dùng khi truy cập vào website giúp duy trì dữ liệu quan trọng Thông tin này sẽ không bị mất khi người dùng chuyển đổi giữa các trang trong ứng dụng.
Sử dụng ObjectContext để chấp nhận hay huỷ bỏ giao dịch do một kịch bản ASP khởi tạo
Khác với đối tƣợng, thành phần ASP là điều khiển ActiveX ghép nối ASP để đơn giản hoá các thủ tục thông thường
Sau đây là một số thành phần ActiveX thông dụng:
BrowserType là thành phần giúp xác định trình duyệt của người dùng, bao gồm tên, phiên bản và các tính năng hỗ trợ như Frame, Table, và nhiều chức năng khác.
- CDO: Liên kết chặt chẽ với IIS, hỗ trợ chúng ta gửi và nhận EMail.
Sử dụng Database với ASP
Hầu hết các ứng dụng web động lưu trữ dữ liệu trong cơ sở dữ liệu, do đó, việc kết nối, xem, thêm, sửa và xóa dữ liệu là rất quan trọng trong lập trình web, đặc biệt là với ngôn ngữ ASP Bài viết này sẽ hướng dẫn bạn các kỹ thuật sử dụng ASP để thao tác với dữ liệu trong cơ sở dữ liệu thông qua kiến trúc ADO.
2.5.1 Các cú pháp căn bản để truy xuất dữ liệu từ database Để thao tác với dữ liệu trong các bảng của database, có 4 thao tác chính với câu lệnh SQL tương ứng như sau:
Lấy tất cả các bản ghi trong bảng:
Nếu lựa chọn có điều kiện:
“Select * from HosoHocVien where MaHV=‟10‟ “
Nếu chỉ lựa chọn một số trường trong bảng:
“Select Ten from HosoHocVien where MaHV=‟10‟ ”
2.5.1.2 Thêm dữ liệu vào bảng
“Insert into HosoHocVien values („001‟,‟Tran Van A‟) “
“Update HosoHocVien set Ten=‟Tran Van B‟ where MaHV=‟001‟ “
“Delete from HosoHocVien where MaHV=‟001‟ “
Chúng ta có thể đạt được kết quả mong muốn bằng cách sử dụng các lệnh SQL phức tạp như join, order by, group by và having.
2.5.2 Đối tƣợng Connection Đối tƣợng Connection cho phép tạo kết nối đến một database
Các bước sử dụng Connection:
- Khai báo đối tƣợng Connection
- Mở Connection với chuỗi kết nối trên
2.5.3 Đối tƣợng Recordset Đối tượng Recordset thường dùng để xem, thêm, sửa, xóa các bản ghi trong bảng dữ liệu của Database Nó trỏ đến tập hợp các bản ghi là kết quả trả về từ câu lệnh select
Các bước sử dụng đối tượng Recordset:
- Khai báo đối tƣợng Recorset
- Mở Recordset với chuỗi sql query và connection đã mở
2.5.4 Thêm sửa xóa dữ liệu trong database
Với một connection đã mở chúng ta có thể dùng nó để thực thi câu lệnh SQL dạng insert, update, delete: