Trình tạo Content Security Policy (CSP)

Chọn những gì trang web của bạn tải — script, style, hình ảnh, font, analytics, nhúng — và nhận một Content-Security-Policy chỉ cho phép đúng những thứ đó, kèm cảnh báo cho các cài đặt rủi ro. Bạn có thể sao chép dưới dạng HTTP header, thẻ <meta>, hoặc cấu hình sẵn cho nginx, Apache, Vercel, Netlify và Express.

Cập nhật
Trang web của bạn sử dụng

Các directive

Các nguồn cách nhau bằng dấu cách: 'self', 'none', host như https://cdn.example.com, data:, blob:.

Chính sách của bạn


  
  

    Dữ liệu của bạn không bao giờ rời khỏi máy tính. Mọi xử lý diễn ra 100% cục bộ trong trình duyệt của bạn.

    Công cụ này có hữu ích không?0.0 0 lượt đánh giá
    Quét miễn phí HTTP security headers của websiteHSTS, CSP, X-Frame-Options và nhiều hơn.Kiểm tra Security Headers →

    Cách dùng Trình tạo CSP

    1. Đánh dấu các dịch vụ trang web của bạn dùng (analytics, font, video nhúng, thanh toán). Host của chúng sẽ được thêm vào đúng directive.
    2. Điều chỉnh directive bất kỳ, ví dụ thêm CDN riêng của bạn vào script-src hoặc img-src.
    3. Bắt đầu với Report-only trên trang đang hoạt động: trình duyệt chỉ ghi nhận vi phạm mà không chặn gì.
    4. Sao chép chính sách dưới dạng header, thẻ meta hoặc cấu hình server, triển khai, rồi kiểm tra console trình duyệt xem tài nguyên nào bị chặn.

    Content Security Policy làm gì?

    Content-Security-Policy (CSP) cho trình duyệt biết trang có thể tải script, style, hình ảnh, font, frame và kết nối từ những nguồn nào. Nếu kẻ tấn công chèn một <script> vào trang (cross-site scripting), trình duyệt sẽ không chạy nó vì nguồn của nó không được phép. Đây là một trong những biện pháp phòng thủ hiệu quả nhất chống XSS và đánh cắp dữ liệu.

    Các directive quan trọng

    DirectiveKiểm soát
    default-srcGiá trị dự phòng cho mọi loại tài nguyên bạn không liệt kê
    script-srcJavaScript — quan trọng nhất
    style-src, img-src, font-srcCSS, hình ảnh và web font
    connect-srcfetch, XHR, WebSocket và beacon analytics
    frame-src / frame-ancestorsBạn nhúng iframe nào / ai được nhúng trang của bạn (clickjacking)
    object-src 'none', base-uri 'self'Chặn hai đường vượt XSS kinh điển — luôn nên đặt

    Triển khai an toàn

    Hãy triển khai với Content-Security-Policy-Report-Only trước và theo dõi console trình duyệt (hoặc endpoint report-to) trong vài ngày. Sửa những gì bị lỗi, sau đó chuyển sang header thực thi. Tránh 'unsafe-inline' và 'unsafe-eval' trong script-src; hãy dùng nonce hoặc hash cho số ít script inline bạn thực sự cần.

    Kiểm tra trang đang hoạt động bằng Security Headers Checker.

    Cũng được tìm dưới tên: công cụ tạo csp, content security policy generator, csp header, tạo content security policy, csp nginx, csp meta tag, csp google analytics, csp report-only.

    Các công cụ dùng kèm tốt với Trình tạo CSP

    • Trình tạo .htaccess — Chọn các quy tắc bạn cần — HTTPS, host chuẩn, redirect, nén, cache, header bảo mật, file được bảo vệ — và nhận ngay một file .htaccess gọn gàng, có chú thích.
    • Tạo Cấu Hình Nginx — Chọn việc Nginx cần làm — phục vụ site tĩnh hoặc SPA, proxy tới ứng dụng Node/Python, hoặc chạy PHP — rồi đánh dấu các tùy chọn thêm.
    • Kiểm tra HTTP Header — Nhập bất kỳ URL nào và xem chính xác máy chủ trả về gì: mã trạng thái, chuỗi chuyển hướng và mọi response header, kèm giải thích dễ hiểu cho những header quan trọng với SEO, cache và bảo mật.
    • Công cụ tạo security.txt — Điền vài trường thông tin để tạo file /.well-known/security.txt đúng chuẩn, giúp nhà nghiên cứu biết cách báo cáo sự cố bảo mật cho bạn.

    Câu hỏi thường gặp

    Làm sao để thêm Content Security Policy cho trang web?
    Gửi nó như một HTTP response header (cách tốt nhất) qua cấu hình server hoặc host — công cụ này tạo sẵn đoạn cấu hình cho nginx, Apache, Vercel và Netlify — hoặc thêm dưới dạng thẻ meta trong phần head của trang.
    Khác nhau giữa Content-Security-Policy và Report-Only là gì?
    Header thường sẽ chặn mọi thứ không được phép. Report-Only không chặn gì, chỉ ghi nhận vi phạm, nên bạn có thể thử nghiệm chính sách trên trang đang hoạt động một cách an toàn.
    Tại sao CSP của tôi chặn Google Analytics?
    GA cần các host của nó trong script-src, img-src và connect-src (googletagmanager.com và google-analytics.com, cùng các endpoint theo khu vực). Hãy đánh dấu Google Analytics ở trên để thêm tất cả.
    Tôi có thể dùng frame-ancestors trong thẻ meta không?
    Không. frame-ancestors, report-uri và sandbox chỉ hoạt động trong HTTP header; trình duyệt sẽ bỏ qua chúng trong thẻ meta.
    Tôi có thể cài Trình tạo CSP như một ứng dụng web và dùng khi không có mạng không?
    Có. Trình tạo CSP là một ứng dụng web (PWA) có thể cài đặt — cài trực tiếp từ trình duyệt, không cần tải từ cửa hàng ứng dụng. Trên Chrome hoặc Edge (Windows, macOS, Linux, ChromeOS) hoặc Android, bấm Cài đặt ứng dụng ở đầu trang này; trên iPhone và iPad, dùng Chia sẻ → Thêm vào Màn hình chính; trên Mac, dùng File → Add to Dock trong Safari 17 trở lên. Sau đó ứng dụng mở trong cửa sổ riêng với biểu tượng riêng, và vì chạy hoàn toàn trên trình duyệt nên vẫn hoạt động khi không có mạng. Firefox trên máy tính không thể cài ứng dụng web. Cách cài đặt hoạt động thế nào.

    Công cụ liên quan