Latar Belakang
Katakanlah saya punya perintah ini
icacls C:\FullyAccessibleFolder /grant Users:(OI)(CI)F
Ini berfungsi baik di Windows versi bahasa Inggris, tetapi tampaknya tidak berfungsi dalam versi Perancis, memberikan kesalahan berikut, mungkin karena Users
berbeda dalam bahasa Prancis. Everyone
diterjemahkan seperti Tout le monde
di Windows, jadi itu bukan solusi juga.
Users: Le mappage entre les noms de compte et les ID de sécurité n'a pas été effectué.
Yang diterjemahkan oleh Google
Users: The mapping between account names and security IDs was not performed.
Pertanyaan
Apakah ada perintah yang bisa saya gunakan untuk mengatur folder dan secara rekursif semua isinya untuk memiliki izin penuh untuk semua pengguna dengan cara yang akan bekerja di berbagai versi bahasa Windows?
Konten dari seluruh web
Halaman ini dengan masalah yang hampir sama berbicara tentang bagaimana Everyone
menjadi Jeder
di Jerman dan Tout le monde
di Perancis.
sumber
icacls C:\FullyAccessibleFolder /grant S-1-5-32-545:(OI)(CI)F
Bekerja di mana-mana.icacls C:\folder /grant *S-1-5-32-545:(OI)(CI)F
, Anda meninggalkan tanda bintang.Jawaban:
Tidak berfungsi dalam versi Prancis, mungkin karena
Users
berbedaAnda memiliki tiga opsi, dirinci di bawah:
Gunakan Gunakan Portal Bahasa untuk mendapatkan nama yang diterjemahkan
Ambil nama yang dilokalkan dari
Users
SIDGunakan
Users
SID denganicacls
Opsi 1: Gunakan Portal Bahasa (sumber kanonik untuk Microsoft Terminology)
Pencarian untuk Pengguna kembali:
Ini menunjukkan bahwa perintah berikut ini dapat berfungsi:
Opsi 2: Ambil nama yang dilokalkan dari
Users
SID (S-1-5-32-545
)Sumber Pengidentifikasi keamanan terkenal di sistem operasi Windows
Untuk mengambil
Users
nama grup yang dilokalkan :Source Cacls, Windows 7, izin penuh, nama lokal oleh wmz
Opsi 3: Gunakan
Users
SID denganicacls
Gunakan perintah berikut:
Sumber komentar oleh Harry Johnston
sumber
xcacls
tampaknya merupakan skrip yang dapat Anda unduh. Tidak perlu;icacls
dibangun ke dalam Windows dan dapat melakukan pekerjaan yang sama.Users
... Saya sudah mengklarifikasi jawabannya karena kita tidak memerlukanxacls
bagian dari solusi yang dikutip.icacls
langsung dengan kredit kepada Anda.Anda perlu menentukan grup AD bukan dengan namanya, tetapi dengan nomor SID.
Untuk grup standar seperti "EveryOne", "Pengguna Domain", dll. Ada nomor SID standar, yang dapat ditemukan di halaman MSDN Pengidentifikasi keamanan terkenal (SID) .
Berikut ini adalah pengidentifikasi relatif yang paling umum.
Struktur SID digambarkan sebagai berikut:
Bagaimana Pengidentifikasi Keamanan Bekerja
sumber
S-1-5-32-544
, dan kemudian modifikasi ACL untuk memberikan semua izin ke grup untuk file atau folder yang dimaksud544
adalah Administrator,545
adalah Pengguna.Jika Anda menyukai skrip PowerShell tetapi kesulitan mengingat angka untuk SID:
Saya tahu itu terlihat seperti satu ton pengetikan, tetapi pengidentifikasi panjang ini dilengkapi tab:
System.Security.Principal.SecurityIdentifier
darisecurityi
System.Security.Principal.WellKnownSidType
dariwellknownsi
System.Security.AccessControl.FileSystemAccessRule
darifilesystem
Semua string ini adalah pengidentifikasi .NET, sehingga tidak terlokalisasi.
Jika Anda menginginkan
Everyone
SID sebagai gantinya, gunakanWorldSid
sebagai gantiBuiltinUsersSid
. Untuk mendapatkan daftar semuaWellKnownSidType
opsi, lihat MSDN atau jalankan perintah ini:sumber
group names
?$sid =
garis dan mengganti$sid
dalam$rule =
sejalan dengan string mengidentifikasi kelompok.