Cách cấp quyền cho ứng dụng Mac để đọc toàn bộ hệ thống tệp


13

Tôi đã mua ứng dụng này có tên Xee từ cửa hàng ứng dụng Mac. Nó có thể mở các tệp hoàn toàn tốt nhưng khi tôi cố duyệt qua một thư mục từ trong ứng dụng Xee, nó phải yêu cầu sự cho phép. (Xem ảnh chụp màn hình bên dưới.) Tôi phải làm điều này cho mọi thư mục lần đầu tiên tôi duyệt nó.

Tôi cho rằng đây là một giới hạn được áp đặt bởi các cửa hàng ứng dụng. Có cách nào để phá vỡ điều này và cấp cho một ứng dụng (được cài đặt trên máy của tôi) để xem bất kỳ thư mục nào, hoặc thậm chí để làm bất cứ điều gì mà nó muốn không?

Ảnh chụp màn hình


1
Điều này được gọi là - Bảo mật. Và rất có thể bạn không muốn một ứng dụng có toàn quyền truy cập vào thư mục BẤT K on trên hệ thống của bạn.
Rob

Điều này chỉ xảy ra cho các tập tin / thư mục bên ngoài thư mục người dùng của bạn hoặc cũng cho những thứ bên trong?
nohillside

@patrix Nó xảy ra trong thư mục người dùng của tôi.
Brian Gordon

Câu trả lời:


3

Hơi khó một chút nhưng, nhưng bạn có thể loại bỏ hộp cát bằng cách thay đổi <key>com.apple.security.app-sandbox</key>giá trị (được đặt thành < true/>) bằng trình chỉnh sửa hex.

Trong macOS Sierra 10.12 được đặt thành < false/>
Trong macOS El Capitain 10.11 hoặc trước đó, đặt thành < fals/>

Đối với Xee, bạn cần chỉnh sửa các tệp nhị phân sau:

  • /Appluggest/Xee³.app/Contents/MacOS/Xee³
  • /Appluggest/Xee³.app/Contents/Loader/Xee3.ImageLoader

Nguồn: /programming/7018354/remove-sandboxing


Cảm ơn bạn! Nó hoạt động. Đừng quên chmod a+xcác tệp nếu bạn đã sử dụng trình soạn thảo hex của mình để tạo các tệp mới.
Brian Gordon

Ngoài ra, hexed.it là tuyệt vời.
Brian Gordon

1
Đây không thực sự là một giải pháp trong tương lai. Ứng dụng Sandboxing ngày càng cần thiết hơn khi thời gian trôi qua, vì vậy làm việc với nó tốt hơn là làm việc chống lại nó
Ben Leggiero

Cân nhắc việc cung cấp phản hồi cho Apple về giới hạn này và cách nó giới hạn quy trình làm việc của bạn. Phản hồi của khách hàng sẽ giúp định hình những gì ứng dụng Mac App Store có thể và không thể làm trong tương lai. Hiện tại, các ứng dụng được mua thông qua Apple Mac App Store bị hạn chế.
Bob Fanger

19

Các ứng dụng được hộp cát. Điều này có nghĩa là ứng dụng đã được ký mã với một tập hợp các quyền. Các quyền lợi này đang được thi hành bởi Mac OS X. Tài liệu dành cho nhà phát triển của Apple về hộp cát cung cấp nhiều chi tiết hơn.

Bạn có thể xem các quyền lợi hộp cát của Xee bằng lệnh Terminal.app sau:

codesign --display --entitlements - /Applications/Xee.app

Bài viết của Ole Begemann, Kiểm tra ký mã và tình trạng hộp cát trong mã , giải thích thêm.

Từ chức hoặc tước quyền

Để xóa các quyền, bạn cần lại vào ứng dụng mà không có quyền - sử dụng codesign- hoặc loại bỏ hoàn toàn việc ký mã từ ứng dụng.

Hỏi nhà phát triển của Xee

Không nên sửa đổi ứng dụng Mac. Yêu cầu các nhà phát triển của Xee giúp đỡ về cách khắc phục hành vi này; chỉ họ mới có kiến ​​thức phù hợp để giải quyết vấn đề này.

Các nhà phát triển của Xee dường như nhận thức được vấn đề:

. yêu cầu bạn cho phép một số thao tác nhất định và nếu bạn thấy điều này gây phiền nhiễu, bạn nên lấy phiên bản không phải trên App Store.)

Nói với Apple

Cân nhắc việc cung cấp phản hồi cho Apple về giới hạn này và cách nó giới hạn quy trình làm việc của bạn. Phản hồi của khách hàng sẽ giúp định hình những gì ứng dụng Mac App Store có thể và không thể làm trong tương lai. Hiện tại, các ứng dụng được mua thông qua Apple Mac App Store bị hạn chế.


2
Câu trả lời của Stellar về hộp cát - được thực hiện tốt trong một chủ đề phức tạp theo cách dễ đọc.
bmike

-4

Hãy thử sao chép nội dung ứng dụng vào ổ cứng của bạn và mở từ đó. Có lẽ ứng dụng đang bảo vệ các tập tin của họ từ chính nó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.