Sambungan sistem dan kernel dalam macOS
macOS 10.15 atau lebih baharu mendayakan pembangun untuk mengembangkan keupayaan macOS dengan memasang dan mengurus sambungan sistem yang berjalan dalam ruang pengguna berbanding pada paras kernel. Dengan menjalankan dalam ruang pengguna, sambungan sistem meningkatkan kestabilan dan keselamatan macOS. Walaupun kext yang sedia ada mempunyai akses penuh kepada keseluruhan sistem pengendalian, sambungan yang berjalan dalam ruang pengguna diberikan hanya keistimewaan yang diperlukan untuk melaksanakan fungsi yang ditetapkan.
Sambungan sistem menyokong pengurusan teguh menggunakan MDM, termasuk keupayaan untuk membenarkan semua sambungan daripada pembangun tertentu atau jenis tertentu (seperti sambungan rangkaian) untuk memuatkan tanpa interaksi pengguna. Secara pilihan, MDM boleh tidak membenarkan pengguna daripada meluluskan sambungan sistem mereka sendiri daripada memuatkan.
Dalam macOS 11.3 hingga macOS 11.6.4, membuat perubahan pada profil sambungan sistem secara terus mempengaruhi keadaan sambungan. Sebagai contoh, jika sambungan masih belum diluluskan dan profil konfigurasi ditolak yang membenarkan sambungan, sambungan dibenarkan untuk memuat. Sebaliknya, jika kelulusan dibatalkan, sambungan sistem dikeluarkan dan ditandakan untuk pengeluaran pada kali seterusnya Mac memulakan semula. Jika sambungan sistem cuba mengeluarkan diri sendiri, dialog pengesahan interaktif muncul yang memerlukan kelayakan pentadbir untuk membenarkan pengeluaran.
Dalam macOS 12.0.1 atau lebih baharu, kamus dalam muat beban Sambungan Sistem—yang dipanggil RemovableSystemExtensions
—membenarkan pentadbir MDM untuk menentukan app yang boleh mengeluarkan sambungan sistem mereka sendiri. Pengesahan pentadbir setempat tidak diperlukan untuk mengeluarkan sambungan sistem. Ini berguna untuk vendor yang mungkin menyediakan penyahpasang diautomasikan untuk app mereka.
Sambungan Kernel
Dalam macOS 11 atau lebih baharu, jika sambungan kernel (kext) pihak ketiga didayakan, ia tidak boleh dimuatkan kepada kernel pada permintaan. Ia memerlukan kelulusan pengguna dan memulakan semula macOS untuk memuatkan perubahan ke dalam kernel dan ia memerlukan but selamat dikonfigurasikan kepada Keselamatan Dikurangkan pada Mac dengan Apple silicon.
Pembangun boleh menggunakan rangka kerja DriverKit dan NetworkExtension, untuk menulis pemacu antara muka USB dan manusia, alatan keselamatan titik tamat (seperti pencegahan kehilangan data atau agen titik tamat lain), serta alatan VPN dan rangkaian, semuanya tanpa perlu menulis kext. Ejen keselamatan pihak ketiga hanya sepatutnya digunakan jika mereka mengambil kesempatan ke atas API ini atau mempunyai peta jalan yang lasak untuk transisi kepadanya dan jauh daripada sambungan kernel.
Penting: Kext tidak lagi disyorkan untuk macOS. Kext memberi risiko integriti dan kebolehpercayaan sistem pengendalian. Pengguna seharusnya mengutamakan penyelesaian yang tidak memerlukan mengembangkan kernel dan menggunakan sambungan sistem.
Menambah kext pada Mac berasaskan Intel atau Apple silicon dengan macOS 11 atau lebih baharu
Jika anda mesti menggunakan sambungan kernel, semak kaedah kelulusan berdasarkan jenis pendaftaran.
Jenis pendaftaran MDM | Kaedah kelulusan | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tidak didaftarkan Pendaftaran Pengguna | Apabila kext baharu dipasang dan terdapat percubaan untuk memuatkannya, mula semula mesti dilakukan oleh pengguna daripada dialog amaran dalam:
Mula semula ini memulakan pembinaan semula AuxKC sebelum ke mengebut kernel. | ||||||||||
Pendaftaran Peranti Pendaftaran Peranti Diautomasikan | Setiap kali kext baharu dipasang dan terdapat percubaan untuk memuatkannya, mula semula perlu dimulakan oleh sama ada:
Nota: Profil senarai yang dibenarkan kext mesti dipasang dahulu oleh penyelesaian MDM yang menentukan kext. macOS 11.3 atau lebih baharu secara pilihan membenarkan MDM untuk memaklumkan pengguna untuk menyelesaikan mula semula apabila sesuai. |
Langkah tambahan untuk menambah kext pada Mac dengan Apple silicon
Jika anda menambah sambungan kernel pada Mac dengan Apple silicon, anda mesti mengambil langkah tambahan.
Jenis pendaftaran MDM | Kaedah kelulusan | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Tidak didaftarkan | Pengurusan kext oleh pengguna memerlukan pengguna untuk mula semula ke recoveryOS bagi menurun taraf seting keselamatan. Pengguna mesti menekan dan menahan butang kuasa untuk memulakan semula ke recoveryOS dan mengesahkan sebagai pentadbir. Hanya apabila recoveryOS dimasuki menggunakan penekanan butang kuasa, barulah Secure Enclave menerima perubahan dasar. Pengguna kemudian mesti memilih kotak semak Keselamatan Dikurangkan dan pilihan “Benarkan pengurusan pengguna untuk sambungan kernel daripada pembangun dikenal pasti” dan memulakan semula Mac. | ||||||||||
Pendaftaran Pengguna | Pengguna mesti memulakan semula ke recoveryOS untuk menurun taraf seting keselamatan. Pengguna mesti menekan dan menahan butang kuasa untuk memulakan semula ke recoveryOS dan mengesahkan sebagai pentadbir setempat. Hanya apabila recoveryOS dimasuki menggunakan penekanan butang kuasa, barulah Secure Enclave menerima perubahan dasar. Pengguna kemudian mesti memilih Keselamatan Dikurangkan, tanda “Benarkan pengurusan pengguna untuk sambungan kernel daripada pembangun dikenal pasti” dan memulakan semula Mac. | ||||||||||
Pendaftaran Peranti | Penyelesaian MDM sepatutnya memberitahu pengguna mereka mesti mula semula ke recoveryOS untuk menurun taraf seting keselamatan. Pengguna mesti menekan dan menahan butang kuasa untuk memulakan semula ke recoveryOS dan mengesahkan sebagai pentadbir. Hanya apabila recoveryOS dimasuki menggunakan penekanan butang kuasa, barulah Secure Enclave menerima perubahan dasar. Pengguna kemudian mesti memilih Keselamatan Dikurangkan, tanda “Benarkan pengurusan jauh sambungan kernel dan kemas kini perisian automatik” dan memulakan semula Mac. Untuk mengetahui jika ciri ini disokong untuk peranti anda, rujuk dokumentasi vendor MDM anda. | ||||||||||
Pendaftaran Peranti Diautomasikan (Nombor siri Mac mestilah kelihatan dalam Apple School Manager, Apple Business Manager, atau Keperluan Perniagaan Apple dan Mac mestilah didaftarkan dalam penyelesaian MDM yang dipautkan ke perkhidmatan.) | Penyelesaian MDM boleh menguruskan ini secara automatik. Untuk mengetahui jika ciri ini disokong untuk peranti anda, rujuk dokumentasi vendor MDM anda. |
Sambungan kernel dengan Perlindungan Integriti Sistem
Jika Perlindungan Integriti Sistem (SIP) didayakan, tanda tangan setiap kext disahkan sebelum disertakan dalam AuxKC.
Jika SIP dinyahdayakan, tanda tangan kext tidak dikuatkuasakan.
Pendekatan ini membenarkan aliran Keselamatan Permisif untuk pembangun atau pengguna yang bukan sebahagian daripada Program Pembangun Apple untuk menguji kext sebelum ditandatangani.