Bagikan melalui


Daftar Kontrol Akses untuk COM

Windows Server XP Service Pack 2 (SP 2) dan Windows Server 2003 Service Pack 1 (SP 1) memperkenalkan peningkatan keamanan untuk Model Objek Komponen Terdistribusi (DCOM). Salah satu penyempurnaan ini adalah hak akses yang lebih spesifik untuk digunakan dalam daftar kontrol akses (ACL). Hak aksesnya adalah:

COM_RIGHTS_EXECUTE 1
COM_RIGHTS_EXECUTE_LOCAL 2
COM_RIGHTS_EXECUTE_REMOTE 4
COM_RIGHTS_ACTIVATE_LOCAL 8
COM_RIGHTS_ACTIVATE_REMOTE 16

Untuk memberikan kompatibilitas mundur, ACL mungkin ada dalam format yang digunakan sebelum Windows XP SP 2 dan Windows Server 2003 SP 1, yang hanya menggunakan hak akses COM_RIGHTS_EXECUTE, atau mungkin ada dalam format baru yang digunakan di Windows XP SP 2 dan Windows Server 2003 SP 1, yang menggunakan COM_RIGHTS_EXECUTE bersama dengan kombinasi COM_RIGHTS_EXECUTE_LOCAL, COM_RIGHTS_EXECUTE_REMOTE, COM_RIGHTS_ACTIVATE_LOCAL, dan COM_RIGHTS_ACTIVATE_REMOTE.

Nota

COM_RIGHTS_EXECUTE harus selalu ada; tidak adanya hak ini menghasilkan deskriptor keamanan yang tidak valid.

 

Anda tidak boleh mencampur format lama dan format baru dalam satu ACL; baik semua entri kontrol akses (ASE) hanya boleh memberikan hak akses COM_RIGHTS_EXECUTE, atau semuanya harus memberikan COM_RIGHTS_EXECUTE bersama dengan kombinasi COM_RIGHTS_EXECUTE_LOCAL, COM_RIGHTS_EXECUTE_REMOTE, COM_RIGHTS_ACTIVATE_LOCAL, dan COM_RIGHTS_ACTIVATE_REMOTE.

Berikut ini adalah contoh ACL yang salah diformat:

Revision 1
Sbz1 0
Control 0x8004
    SE_DACL_PRESENT
    SE_SELF_RELATIVE
Owner: S-1-5-21-1597522630-148096252-1166023319-500 (no name mapped)
Group: S-1-5-21-1597522630-148096252-1166023319-500 (no name mapped)
DACL:
    AclRevision 2
    Sbz1 0
    AclSize 128
    AceCount 4
    Sbz2 0
    Ace[0]
        AceType 0: ACCESS_ALLOWED_ACE_TYPE
        AceFlags 0
        AceSize 36
        AccessMask 0x1
        S-1-5-21-1597522630-148096252-1166023319-500 (no name mapped)
    Ace[1]
        AceType 0: ACCESS_ALLOWED_ACE_TYPE
        AceFlags 0
        AceSize 20
        AccessMask 0xb
        S-1-5-18 (Well Known Group: NT AUTHORITY\SYSTEM)
    Ace[2]
        AceType 0: ACCESS_ALLOWED_ACE_TYPE
        AceFlags 0
        AceSize 20
        AccessMask 0x9
        S-1-5-11 (Well Known Group: NT AUTHORITY\Authenticated Users)
SACL:
    (null)

Perhatikan bahwa entri kontrol akses pertama (ACE) hanya memberikan COM_RIGHTS_EXECUTE (0x1), sementara ACE kedua memberikan COM_RIGHTS_EXECUTE, COM_RIGHTS_EXECUTE_LOCAL, dan COM_RIGHTS_ACTIVATE_LOCAL (0xb), dan ACE ketiga memberikan COM_RIGHTS_EXECUTE dan COM_RIGHTS_ACTIVATE_LOCAL (0x9).

Untuk memperbaiki ini, ACE pertama harus diubah untuk memberikan COM_RIGHTS_EXECUTE dalam kombinasi dengan salah satu dari empat hak akses lainnya, atau ACE kedua dan ketiga harus diubah untuk memberikan hanya COM_RIGHTS_EXECUTE.

Peningkatan Keamanan DCOM di Windows XP Service Pack 2 dan Windows Server 2003 Service Pack 1

Keamanan di COM