---
format: "aidr-story-markdown/v1"
id: "64d6a4efd836b9d998536b8e17614d62fd170318601ac1c2790fbe8db888563e"
canonical_url: "https://aidr.today/64d6a4ef?lang=vi"
title: "Tôi không thích mô hình bảo mật của Deno (2024)"
lang: "vi"
requested_lang: "vi"
available_langs: ["en","vi"]
translation_fallback: null
fallback_fields: []
published_at: "2026-11-07T23:19:53.000Z"
category: "Releases"
topics: ["safety"]
source_urls: ["https://goldstein.lol/posts/deno-security/","https://lobste.rs/s/sh62d1/i_m_not_fan_deno_s_security_model_2024"]
summary: "Điều này đã làm tôi bận tâm một thời gian, vì vậy tôi muốn viết ra những suy nghĩ của mình để có thể gạt nó ra khỏi đầu và tiếp tục công việc. Chúng ta sẽ thảo luận về cách Deno tiếp cận bảo mật, cụ thể là với hệ thống phân quyền, và lý do tại sao tôi cho rằng cách tiếp cận này về cơ bản là không an toàn và gây hiểu lầm. Deno là một language runtime cho JavaScript. Nó bao gồm một thư viện tiêu chuẩn, một trình quản lý gói, một trình biên dịch TypeScript và một số thứ khác không quan trọng cho câu chuyện này. Đây không phải là một bản thực thi JavaScript, vì vậy nó không thông dịch hay biên dịch JavaScript mà dùng lại V8 cho việc đó. Một trong những tính năng chủ chốt của Deno là hệ thống phân quyền (nằm dưới tiêu đề \"Secure by default\" trên trang chủ của họ). Ý tưởng rất đơn giản: vì mã JS chạy trong Deno cần thư viện tiêu chuẩn để truy cập thế giới bên ngoài, Deno có thể chọn cho phép hoặc từ chối các quyền truy cập đó, chẳng hạn khi bạn chạy, thư viện tiêu chuẩn sẽ chỉ cho phép code.ts đọc /tmp/dir và chạy uname. Ngoài ra, một chương trình có thể yêu cầu quyền tại thời điểm runtime, vì vậy các mã như thế này sẽ hiển thị một prompt nhỏ gọn trong terminal: (ngoài lề: Tôi thực sự n…"
---

# Tôi không thích mô hình bảo mật của Deno \(2024\)

> [Open the canonical story](<https://aidr.today/64d6a4ef?lang=vi>)

**Published:** 2026-11-07T23:19:53.000Z
**Category:** Releases
**Topics:** safety

## Summary

Điều này đã làm tôi bận tâm một thời gian, vì vậy tôi muốn viết ra những suy nghĩ của mình để có thể gạt nó ra khỏi đầu và tiếp tục công việc\. Chúng ta sẽ thảo luận về cách Deno tiếp cận bảo mật, cụ thể là với hệ thống phân quyền, và lý do tại sao tôi cho rằng cách tiếp cận này về cơ bản là không an toàn và gây hiểu lầm\. Deno là một language runtime cho JavaScript\. Nó bao gồm một thư viện tiêu chuẩn, một trình quản lý gói, một trình biên dịch TypeScript và một số thứ khác không quan trọng cho câu chuyện này\. Đây không phải là một bản thực thi JavaScript, vì vậy nó không thông dịch hay biên dịch JavaScript mà dùng lại V8 cho việc đó\. Một trong những tính năng chủ chốt của Deno là hệ thống phân quyền \(nằm dưới tiêu đề "Secure by default" trên trang chủ của họ\)\. Ý tưởng rất đơn giản: vì mã JS chạy trong Deno cần thư viện tiêu chuẩn để truy cập thế giới bên ngoài, Deno có thể chọn cho phép hoặc từ chối các quyền truy cập đó, chẳng hạn khi bạn chạy, thư viện tiêu chuẩn sẽ chỉ cho phép code\.ts đọc /tmp/dir và chạy uname\. Ngoài ra, một chương trình có thể yêu cầu quyền tại thời điểm runtime, vì vậy các mã như thế này sẽ hiển thị một prompt nhỏ gọn trong terminal: \(ngoài lề: Tôi thực sự n…

## Sources

- [Story source](<https://goldstein.lol/posts/deno-security/>)
- [Discussion](<https://lobste.rs/s/sh62d1/i_m_not_fan_deno_s_security_model_2024>)

