Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Fungsi
Sintaksis
BOOL CreateRestrictedToken(
[in] HANDLE ExistingTokenHandle,
[in] DWORD Flags,
[in] DWORD DisableSidCount,
[in, optional] PSID_AND_ATTRIBUTES SidsToDisable,
[in] DWORD DeletePrivilegeCount,
[in, optional] PLUID_AND_ATTRIBUTES PrivilegesToDelete,
[in] DWORD RestrictedSidCount,
[in, optional] PSID_AND_ATTRIBUTES SidsToRestrict,
[out] PHANDLE NewTokenHandle
);
Parameter
[in] ExistingTokenHandle
Handel ke utama
[in] Flags
Menentukan opsi hak istimewa tambahan. Parameter ini bisa nol atau kombinasi dari nilai berikut.
| Nilai | Arti |
|---|---|
DISABLE_MAX_PRIVILEGE0x1 |
Menonaktifkan semua hak istimewa dalam token baru kecuali hak istimewa |
SANDBOX_INERT0x2 |
Jika nilai ini digunakan, sistem tidak memeriksa aturan AppLocker atau menerapkan Kebijakan Pembatasan Perangkat Lunak . Untuk AppLocker, bendera ini menonaktifkan pemeriksaan untuk keempat kumpulan aturan: Dapat Dieksekusi, Penginstal Windows, Skrip, dan DLL. Saat membuat program penyiapan yang harus menjalankan DLL yang diekstrak selama penginstalan, gunakan bendera SAFER_TOKEN_MAKE_INERT di fungsi SaferComputeTokenFromLevel. Token dapat dikueri untuk keberadaan bendera ini dengan menggunakan GetTokenInformation. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Pada sistem dengan KB2532445 terinstal, pemanggil harus berjalan sebagai LocalSystem atau TrustedInstaller atau sistem mengabaikan bendera ini. Untuk informasi selengkapnya, lihat Anda bisa menghindari aturan AppLocker dengan menggunakan makro Office di komputer yang menjalankan Windows 7 atau Windows Server 2008 R2. Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: AppLocker tidak didukung. AppLocker diperkenalkan di Windows 7 dan Windows Server 2008 R2. |
LUA_TOKEN0x4 |
Token baru adalah token LUA. Windows Server 2003 dan Windows XP: Nilai ini tidak didukung. |
WRITE_RESTRICTED0x8 |
Token baru berisi pembatasan SID yang hanya dipertimbangkan saat mengevaluasi akses tulis. Windows XP dengan SP2 dan yang lebih baru: Nilai konstanta ini 0x4. Agar aplikasi kompatibel dengan Windows XP dengan SP2 dan sistem operasi yang lebih baru, aplikasi harus meminta sistem operasi dengan memanggil fungsi GetVersionEx untuk menentukan nilai mana yang harus digunakan.Windows Server 2003 dan Windows XP dengan SP1 dan yang lebih lama: Nilai ini tidak didukung. |
[in] DisableSidCount
Menentukan jumlah entri dalam array
[in, optional] SidsToDisable
Penunjuk ke array struktur SID_AND_ATTRIBUTES yang menentukan SID khusus tolak dalam token terbatas. Sistem menggunakan SID khusus tolak untuk menolak akses ke objek yang dapat diamankan. Tidak adanya SID khusus tolak tidak mengizinkan akses.
Menonaktifkan SID mengaktifkan SE_GROUP_USE_FOR_DENY_ONLY dan menonaktifkan SE_GROUP_ENABLED dan SE_GROUP_ENABLED_BY_DEFAULT. Semua atribut lainnya diabaikan.
Atribut khusus tolak berlaku untuk kombinasi SID token yang ada, termasuk SID pengguna dan SID grup yang memiliki atribut SE_GROUP_MANDATORY. Untuk mendapatkan SID yang terkait dengan token yang ada, gunakan fungsi
Fungsi ini mengabaikan Atribut anggota struktur SID_AND_ATTRIBUTES.
Parameter ini dapat null jika tidak ada SID yang akan dinonaktifkan.
[in] DeletePrivilegeCount
Menentukan jumlah entri dalam array PrivilegesToDelete.
[in, optional] PrivilegesToDelete
Penunjuk ke array struktur LUID_AND_ATTRIBUTES yang menentukan hak istimewa untuk dihapus dalam token terbatas.
Fungsi GetTokenInformation
Fungsi ini mengabaikan Atribut anggota struktur LUID_AND_ATTRIBUTES.
Parameter ini dapat null jika Anda tidak ingin menghapus hak istimewa apa pun.
Jika program panggilan melewati terlalu banyak hak istimewa dalam array ini, CreateRestrictedToken mengembalikan ERROR_INVALID_PARAMETER.
[in] RestrictedSidCount
Menentukan jumlah entri dalam array
[in, optional] SidsToRestrict
Penunjuk ke array struktur SID_AND_ATTRIBUTES yang menentukan daftar SID pembatasan untuk token baru. Jika token yang ada adalah token terbatas, daftar membatasi SID untuk token baru adalah persimpangan array ini dan daftar membatasi SID untuk token yang ada. Tidak ada pemeriksaan yang dilakukan untuk menghapus SID duplikat yang ditempatkan pada parameter
Atribut anggota struktur SID_AND_ATTRIBUTES harus nol. Membatasi SID selalu diaktifkan untuk pemeriksaan akses.
Parameter ini dapat NULL jika Anda tidak ingin menentukan SID pembatasan apa pun.
[out] NewTokenHandle
Penunjuk ke variabel yang menerima handel ke token terbatas baru. Handel ini memiliki hak akses yang sama dengan ExistingTokenHandle. Token baru adalah jenis yang sama, utama atau peniruan , sebagai token yang ada. Handel yang dikembalikan di
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError.
Komentar
Fungsi
- Terapkan atribut tolak-saja ke SID dalam token sehingga tidak dapat digunakan untuk mengakses objek aman. Untuk informasi selengkapnya tentang atribut tolak-saja, lihat Atribut SID dalam Token Akses.
- Hapus hak istimewa
dari token. - Tentukan daftar SID pembatasan, yang digunakan sistem saat memeriksa akses token ke objek yang dapat diamankan. Sistem melakukan dua pemeriksaan akses: satu menggunakan SID token yang diaktifkan, dan yang lain menggunakan daftar membatasi SID. Akses diberikan hanya jika kedua pemeriksaan akses mengizinkan hak akses yang diminta.
Anda dapat menggunakan token terbatas di fungsi
Anda dapat menggunakan token terbatas dalam fungsi
Peringatan
Aplikasi yang menggunakan token terbatas harus menjalankan aplikasi terbatas pada desktop selain desktop default. Ini diperlukan untuk mencegah serangan oleh aplikasi terbatas, menggunakan SendMessage atau PostMessage, ke aplikasi yang tidak dibatasi di desktop default. Jika perlu, beralih antar desktop untuk tujuan aplikasi Anda.
Persyaratan
| Syarat | Nilai |
|---|---|
| klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
| server minimum yang didukung |
Windows Server 2003 [hanya aplikasi desktop] |
| Platform Target |
Windows |
| Header |
securitybaseapi.h (termasuk Windows.h) |
| Pustaka |
Advapi32.lib |
| DLL |
Advapi32.dll |
Lihat juga
Gambaran Umum Kontrol Akses
GetTokenInformation
IsTokenRestricted