← Tất cả cẩm nang Shopify Security

Navi+ được xây dựng thế nào để hạn chế rủi ro cho cửa hàng Shopify của bạn

Quyền chỉ đọc, không truy cập trang thanh toán, không sửa theme, file menu tĩnh trên CDN: cách Navi+ được thiết kế, và những giới hạn thật mà mọi merchant nên biết.

Sau vụ chiếm quyền app tháng 10/2026, nhiều merchant đặt ra một câu hỏi khắt khe cho mọi app trong hệ thống của họ: nếu nhà cung cấp này bị tấn công, điều gì có thể chạm tới khách hàng của tôi?

Đó là câu hỏi đúng. Dưới đây là câu trả lời thẳng thắn cho Navi+, dựa trên cách app thực sự được xây dựng và cấu hình, bao gồm cả những giới hạn mà không app nào có thể hứa loại bỏ.

Phát hiện chính
  • Quyền chỉ đọc. Navi+ chỉ xin Shopify bốn quyền đọc: theme, sản phẩm, điều hướng cửa hàng trực tuyến và nội dung. Không có đơn hàng, không có khách hàng, không có quyền ghi vào theme.
  • Không truy cập thanh toán. Navi+ không có extension thanh toán và không có web pixel. Nó không bao giờ chạy trên trang thanh toán.
  • Không sửa theme. Menu storefront được tải qua một khối app embed của Shopify, không phải bằng cách sửa file theme hay dùng ScriptTag.
  • Người mua không bao giờ nói chuyện trực tiếp với máy chủ của chúng tôi. Menu được xuất bản thành file tĩnh trên CDN.

Một lớp điều hướng đọc được cửa hàng nhưng không bao giờ chạm tới thanh toán hay dữ liệu khách hàng Minh họa ý tưởng: một lớp điều hướng đọc được cửa hàng nhưng không bao giờ chạm tới thanh toán hay dữ liệu khách hàng.

Cách Navi+ được kết nối vào một cửa hàng Shopify Sơ đồ: những gì Navi+ có thể chạm tới (xanh lá) và những gì nó không bao giờ đụng đến (xám).

Thuộc chủ đề tổng hợpKhám phá trang tổng hợp Bảo mật Shopify →

1. Quyền: chỉ những gì một menu cần

Một app điều hướng cần biết bố cục theme, sản phẩm, menu và trang của bạn. Đó là tất cả những gì Navi+ yêu cầu từ Shopify:

  • read_themes
  • read_products
  • read_online_store_navigation
  • read_content

Không có write_themes, không có write_script_tags, và không có scope nào cho đơn hàng hay khách hàng. Ngay cả khi kẻ tấn công xâm nhập được quyền truy cập Shopify của app, những quyền đó cũng không cho phép sửa file theme của bạn hay đọc lịch sử đơn hàng của bạn.

2. Phiên cài đặt và quản trị: được Shopify ký xác nhận

Navi+ xử lý xác thực qua quá trình cài đặt do Shopify quản lý và token exchange. Khi bạn mở Navi+ trong trang quản trị Shopify, Shopify cung cấp một ID token có chữ ký. Trước khi đổi nó lấy access token, Navi+ kiểm tra bốn điều kiện:

  • Chữ ký mật mã hợp lệ.
  • Token được cấp cho Navi+.
  • Token thuộc về đúng cửa hàng myshopify.com của bạn.
  • Token chưa hết hạn.

Access token thu được là một offline token có thời hạn, không bao giờ là chìa khóa vĩnh viễn.

Để ngăn clickjacking, trang quản trị Navi+ cũng yêu cầu trình duyệt chỉ hiển thị nó trong trang quản trị của cửa hàng bạn và tên miền quản trị của Shopify.

Mỗi khi Shopify gửi sự kiện nền tới Navi+ (như webhook gỡ cài đặt), app kiểm tra chữ ký của Shopify và từ chối mọi payload không khớp.

3. Storefront: một app embed, không phải can thiệp vào theme

Trên storefront, Navi+ chạy hoàn toàn như một theme app extension (khối app embed). Bạn bật hoặc tắt nó bằng một công tắc đơn giản trong trình chỉnh sửa theme của Shopify. Vì Navi+ không bao giờ ghi vào file theme của bạn, code của chúng tôi không chặn việc cập nhật theme, và không còn đoạn code thừa nào cần xóa khỏi theme.liquid nếu bạn gỡ app.

4. File menu tĩnh: không có lệnh gọi trực tiếp từ người mua

Khi bạn xuất bản menu, Navi+ biên dịch nó thành một file tĩnh trên CDN. Script storefront tải bất đồng bộ và đọc file đó. Trình duyệt của người mua không bao giờ gọi máy chủ ứng dụng hay cơ sở dữ liệu của Navi+. Điều đó mang lại hai lợi thế riêng biệt:

  • Hiệu năng và khả năng phục hồi. Nếu máy chủ ứng dụng của chúng tôi chậm hoặc ngừng hoạt động, các menu đã xuất bản của bạn vẫn tiếp tục hoạt động.
  • Cô lập lỗi. Script storefront được bọc an toàn. Nếu nó lỗi, menu không hiển thị, lỗi được ghi nhật ký, và cửa hàng, giỏ hàng và thanh toán của bạn vẫn tiếp tục chạy. Một CDN dự phòng sẽ được thử nếu CDN chính lỗi.

5. Dữ liệu người mua: giữ trong trình duyệt

Navi+ không chạm vào thanh toán và chỉ đọc số lượng sản phẩm trong giỏ để hiển thị huy hiệu giỏ hàng. Khi khách hàng đăng nhập, menu có thể kiểm tra thẻ khách hàng hoặc công ty B2B của họ để hiển thị hoặc ẩn các mục cụ thể, ví dụ như liên kết bán sỉ. Việc kiểm tra đó diễn ra trong trình duyệt của người mua; chúng tôi không tìm thấy đường dẫn nào gửi các chi tiết này về Navi+.

Hai chi tiết vận hành cho các buổi đánh giá quyền riêng tư của bạn:

  • Navi+ có phân tích sử dụng storefront tùy chọn (Google Analytics), và merchant có thể tắt.
  • Một mẫu hiệu năng nhỏ (khoảng 5% lượt xem trang Shopify) ghi lại thời gian tải với tên cửa hàng đã băm; nó không lưu địa chỉ IP, user agent hay URL trang.

6. Những giới hạn thật

Không nhà cung cấp app nào có thể hứa “không thể bị hack”. Đây là điều chúng tôi nghĩ một merchant cẩn trọng nên biết riêng về Navi+:

  • Menu có thể chứa HTML tùy chỉnh. Navi+ cho phép merchant thêm khối HTML tùy chỉnh và liên kết vào menu. Sự linh hoạt đó rất mạnh, nhưng cũng có nghĩa là bất kỳ ai có thể sửa menu Navi+ của bạn đều có thể thay đổi những gì xuất hiện trên storefront. Hãy giới hạn quyền nhân viên Shopify cho phù hợp.
  • File menu do nhà cung cấp phục vụ. Giống các app trong vụ việc tháng 10, Navi+ phân phối cấu hình từ hạ tầng riêng của mình. Các biện pháp bảo vệ của chúng tôi là scope chỉ đọc, không có quyền truy cập thanh toán, và việc xuất bản file tĩnh thay vì chạy code cài đặt trực tiếp. Chúng thu hẹp rủi ro; chúng không làm rủi ro thành con số không.
  • Chúng tôi đang cải thiện. Công việc bảo mật cho app vẫn đang tiếp diễn, và chúng tôi sẽ cập nhật trang này khi có thay đổi.

7. Cách tự kiểm tra bất kỳ app menu nào (kể cả Navi+)

  1. Mở Cài đặt → Ứng dụng và kênh bán hàng, chọn app, và đọc danh sách quyền truy cập của nó.
  2. Trong trình chỉnh sửa theme, xem mục App embeds để biết app nào chạy trên storefront của bạn.
  3. Mở cửa hàng trong cửa sổ ẩn danh, mở công cụ nhà phát triển của trình duyệt, và kiểm tra domain nào tải script.
  4. Nhấp mọi liên kết menu dẫn tới thanh toán hoặc giỏ hàng và xác nhận bạn vẫn ở domain của mình.
  5. Gỡ các app menu bạn không dùng nữa; tắt embed sẽ dừng code của chúng ngay lập tức.

Để có bức tranh rộng hơn, đọc các mối đe dọa với merchant Shopify năm 2026, Shopify đã làm gì để bảo vệ cửa hàng và các công nghệ bảo mật đáng hiểu.


Nguồn tham khảo

  1. Cấu hình app Navi+ (scope, app embed, storefront loader), xem xét ngày 4/11/2026.
  2. Shopify.dev, Token exchange: https://shopify.dev/docs/apps/build/authentication-authorization/access-tokens/token-exchange
  3. Shopify.dev, Set up iframe protection: https://shopify.dev/docs/apps/build/security/set-up-iframe-protection
  4. Shopify.dev, Privacy law compliance (webhooks): https://shopify.dev/docs/apps/build/privacy-law-compliance
  5. Roman Zipp, Shopify shops hit with ongoing Checkout Hijack attack: https://romanzipp.com/blog/shopify-hit-with-phishing-attack
Chia sẻ Facebook X LinkedIn

Tạo menu điều hướng khách hàng yêu thích

Navi+ giúp bạn tạo menu chuyển đổi cao cho Shopify và mọi website — không cần code.

Dùng thử Navi+ miễn phí See Live Demo →
Explore menus: Bottom Tab Bar • Mega Menu • Mobile Drawer • Floating FAB • Plans & Pricing

Bắt đầu với Navi+

Chọn nền tảng của bạn — miễn phí cài đặt, hoạt động trong vài phút.