Condividi tramite


SI_OBJECT_INFO struttura (aclui.h)

La struttura SI_OBJECT_INFO viene usata dal metodo ISecurityInformation::GetObjectInformation per specificare le informazioni usate per inizializzare l'editor di controllo di accesso.

Sintassi

typedef struct _SI_OBJECT_INFO {
  DWORD     dwFlags;
  HINSTANCE hInstance;
  LPWSTR    pszServerName;
  LPWSTR    pszObjectName;
  LPWSTR    pszPageTitle;
  GUID      guidObjectType;
} SI_OBJECT_INFO, *PSI_OBJECT_INFO;

Members

dwFlags

Set di flag di bit che determinano le opzioni di modifica disponibili per l'utente. Questo membro può essere una combinazione dei valori seguenti.

Valore Significato
SI_ADVANCED
0x00000010L
Se questo flag è impostato, il pulsante Avanzate viene visualizzato nella pagina delle proprietà di sicurezza di base. Se l'utente fa clic su questo pulsante, il sistema visualizza una scheda delle proprietà di sicurezza avanzata che consente la modifica avanzata dell'elenco di controllo di accesso discrezionale dell'oggetto.

Combinare questo flag con i flag SI_EDIT_AUDITS, SI_EDIT_OWNER e SI_EDIT_PROPERTIES flag per abilitare la modifica delle voci SACL, proprietario e controllo di accesso specifico dell'oggetto.

SI_AUDITS_ELEVATION_REQUIRED
0x02000000L
Se questo flag è impostato, viene visualizzato uno schermo sul pulsante Modifica delle pagine di controllo avanzate. Per gli oggetti NTFS, questo flag viene richiesto quando l'utente non ha accesso READ_CONTROL o ACCESS_SYSTEM_SECURITY .

Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_CONTAINER
0x00000004L
Indica che l'oggetto è un contenitore. Se questo flag è impostato, l'editor di controllo di accesso abilita i controlli rilevanti per l'ereditarietà delle autorizzazioni sugli oggetti figlio.
SI_DISABLE_DENY_ACE
0x80000000L
Se questo flag è impostato, il sistema disabilita la negazione di un ACE. I client dell'editor di controllo di accesso devono implementare l'interfaccia ISecurityInformation4 per impostare questo flag.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_EDIT_ALL
Combina i flag SI_EDIT_PERMS, SI_EDIT_OWNER e SI_EDIT_AUDITS.
SI_EDIT_AUDITS
0x00000002L
Se questo flag è impostato e l'utente fa clic sul pulsante Avanzate, il sistema visualizza un foglio delle proprietà di sicurezza avanzato che include una pagina proprietà Auditing per la modifica del SACL dell'oggetto. Per visualizzare il pulsante Avanzate , impostare il flag di SI_ADVANCED.
SI_EDIT_EFFECTIVE
0x0002000L
Se questo flag è impostato, viene visualizzata la pagina Autorizzazioni effettive . Questo flag viene ignorato se l'oggetto ISecurityInformation che inizializza l'editor di controllo di accesso non implementa l'interfaccia IEffectivePermission .
SI_EDIT_OWNER
0x00000001L
Se questo flag è impostato e l'utente fa clic sul pulsante Avanzate, il sistema visualizza un foglio delle proprietà di sicurezza avanzato che include una pagina proprietà Owner per modificare il proprietario dell'oggetto. Per visualizzare il pulsante Avanzate , impostare il flag di SI_ADVANCED.
SI_EDIT_PERMS
0x00000000L
Si tratta del valore predefinito. Nella pagina della proprietà di sicurezza di base vengono sempre visualizzati i controlli per la modifica di base dell'elenco dati dell'oggetto. Per disabilitare questi controlli, impostare il flag di SI_READONLY.
SI_EDIT_PROPERTIES
0x00000080L
Se questo flag è impostato, il sistema abilita i controlli per la modifica degli ACL che si applicano ai set di proprietà e alle proprietà dell'oggetto. Questi controlli sono disponibili solo nel foglio delle proprietà visualizzato quando l'utente fa clic sul pulsante Avanzate .
SI_ENABLE_CENTRAL_POLICY
0x40000000L
Se questo flag è impostato, il sistema abilita la modifica degli attributi. I client dell'editor di controllo di accesso devono implementare l'interfaccia ISecurityInformation4 per impostare questo flag.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_ENABLE_EDIT_ATTRIBUTE_CONDITION
0x20000000L
Se questo flag è impostato, il sistema abilita la modifica degli attributi. I client dell'editor di controllo di accesso devono implementare l'interfaccia ISecurityInformation4 per impostare questo flag.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_MAY_WRITE
0x10000000L
Indica che l'editor di controllo di accesso non può leggere l'elenco dati, ma potrebbe essere in grado di scrivere nell'elenco di controllo dati. Se una chiamata al metodo ISecurityInformation::GetSecurity restituisce AccessDenied, l'utente può provare a aggiungere un nuovo ACE e viene visualizzato un avviso più appropriato.
SI_NO_ACL_PROTECT
0x0000200L
Se questo flag è impostato, l'editor di controllo di accesso nasconde la casella di controllo che consente agli ACL ereditabili di propagare dall'oggetto padre a questo oggetto. Se questo flag non è impostato, la casella di controllo è visibile.

La casella di controllo è deselezionata se il flag di SE_DACL_PROTECTED è impostato nel descrittore di sicurezza dell'oggetto. In questo caso, il daCL dell'oggetto è protetto dalla modifica da parte degli ACL ereditabili.

Se l'utente cancella la casella di controllo, gli ACL ereditati nel descrittore di sicurezza vengono eliminati o convertiti in ACL nonriti. Prima di procedere con questa conversione, il sistema visualizza una finestra di messaggio di avviso per confermare la modifica.

SI_NO_ADDITIONAL_PERMISSION
0x0020000L
Se questo flag è impostato, l'editor di controllo di accesso nasconde la scheda Autorizzazioni speciali nella pagina Impostazioni di sicurezza avanzate .
SI_NO_TREE_APPLY
0x00000400L
Se questo flag è impostato, l'editor di controllo di accesso nasconde la casella di controllo che controlla il flag di NO_PROPAGATE_INHERIT_ACE. Questo flag è rilevante solo quando viene impostato anche il flag di SI_ADVANCED.
SI_OBJECT_GUID
0x00010000L
Se impostato, indica che il membro guidObjectType della struttura SI_OBJECT_INFO è valido. Questo valore viene impostato in confronto con aces specifici dell'oggetto per determinare se l'ace si applica all'oggetto corrente.
SI_OWNER_ELEVATION_REQUIRED
0x0400000L
Se questo flag è impostato, viene visualizzato uno schermo sul pulsante Modifica della pagina Proprietario avanzato. Per gli oggetti NTFS, questo flag viene richiesto quando l'utente non dispone dell'accesso WRITE_OWNER . Questo flag è valido solo se viene richiesta la pagina proprietario.

Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_OWNER_READONLY
0x00000040L
Se questo flag è impostato, l'utente non può modificare il proprietario dell'oggetto. Impostare questo flag se SI_EDIT_OWNER è impostato, ma l'utente non dispone dell'autorizzazione per modificare il proprietario.
SI_OWNER_RECURSE
0x00000100L
Combinare questo flag con SI_CONTAINER per visualizzare una casella di controllo nella pagina proprietario che indica se l'utente intende applicare il nuovo proprietario a tutti gli oggetti figlio e all'oggetto corrente. L'editor di controllo di accesso non esegue la ricorsione; la ricorsione deve essere eseguita dall'applicazione in ISecurityInformation::SetSecurity.
SI_PAGE_TITLE
0x00000800L
Se questo flag è impostato, il membro pszPageTitle viene usato come titolo della pagina delle proprietà di sicurezza di base. In caso contrario, viene usato un titolo predefinito.
SI_PERMS_ELEVATION_REQUIRED
0x0100000L
Se questo flag è impostato, viene visualizzata un'immagine di uno schermo sul pulsante Modifica delle pagine autorizzazioni semplici e avanzate. Per gli oggetti NTFS, questo flag viene richiesto quando l'utente non ha READ_CONTROL o WRITE_DAC accesso.

Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_READONLY
0x00000008L
Se questo flag è impostato, l'editor visualizza le informazioni di sicurezza dell'oggetto, ma i controlli per la modifica delle informazioni sono disabilitati.

Questo flag non può essere combinato con il flag di SI_VIEW_ONLY .

SI_RESET
0x00000020L
Se questo flag è impostato, viene visualizzato il pulsante Impostazione predefinita . Se l'utente fa clic su questo pulsante, l'editor di controllo di accesso chiama il metodo ISecurityInformation::GetSecurity per recuperare un descrittore di sicurezza predefinito definito dall'applicazione. L'editor di controllo di accesso usa questo descrittore di sicurezza per reinizializzare il foglio delle proprietà e l'utente può applicare la modifica o l'annullamento.
SI_RESET_DACL
0x00040000L
Se impostato, questo flag visualizza il pulsante Reimposta impostazioni predefinite nella pagina Autorizzazioni .
SI_RESET_DACL_TREE
0x00004000L
Se impostato, questo flag visualizza le autorizzazioni Reimposta per tutti gli oggetti figlio e abilita la propagazione delle autorizzazioni ereditabili nella pagina Autorizzazioni della finestra Impostazioni Controllo di accesso. Se questa casella di controllo viene selezionata quando l'utente fa clic sul pulsante Applica, viene eseguita un'operazione bit per bit sul parametro SecurityInformation di ISecurityInformation::SetSecurity con SI_RESET_DACL_TREE. Questa funzione non reimposta le autorizzazioni e abilita la propagazione delle autorizzazioni ereditabili; l'implementazione di ISecurityInformation deve farlo.
SI_RESET_OWNER
0x0010000L
Se impostato, questo flag visualizza il pulsante Reimposta impostazioni predefinite nella pagina Proprietario .
SI_RESET_SACL
0x00080000L
Se impostato, questo flag visualizza il pulsante Reimposta impostazioni predefinite nella pagina Controllo .
SI_RESET_SACL_TREE
0x00008000L
Se impostato, questo flag visualizza le voci di controllo Reimposta in tutti gli oggetti figlio e abilita la propagazione delle voci di controllo ereditabili nella pagina Controllo della finestra Impostazioni Controllo di accesso. Se questa casella di controllo viene selezionata quando l'utente fa clic sul pulsante Applica, viene eseguita un'operazione bit per bit-OR sul parametro SecurityInformation::SetSecurity with SI_RESET_SACL_TREE. Questa funzione non reimposta le autorizzazioni e abilita la propagazione delle autorizzazioni ereditabili; l'implementazione di ISecurityInformation deve farlo.
SI_SCOPE_ELEVATION_REQUIRED
0x08000000L
Se questo flag è impostato, viene visualizzata un'immagine di uno schermo sul pulsante Modifica dell'attributo Scope. Per gli oggetti NTFS, questo flag viene richiesto quando l'utente non ha accesso READ_CONTROL o WRITE_DAC. I client dell'editor di controllo di accesso devono implementare l'interfaccia ISecurityInformation4 per impostare questo flag.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo flag non è supportato.

SI_SERVER_IS_DC
0x00001000L
Impostare questo flag se il computer pszServerName è noto come controller di dominio. Se questo flag è impostato, il nome di dominio viene incluso nell'elenco di ambito della finestra di dialogo Aggiungi utenti e gruppi . In caso contrario, il computer pszServerName viene usato per determinare l'elenco di ambiti della finestra di dialogo.
SI_VIEW_ONLY
0x0040000L
Questo flag viene impostato dal client dell'editor di controllo di accesso per visualizzare le versioni di sola lettura delle finestre di dialogo dell'editor di controllo di accesso. Queste versioni delle finestre di dialogo non consentono la modifica delle autorizzazioni dell'oggetto associato. I client dell'editor di controllo di accesso devono implementare l'interfaccia ISecurityInformation3 per impostare questo flag.

Questo flag non può essere combinato con il flag di SI_READONLY .

Windows Server 2003 e Windows XP: Questo flag non è supportato.

hInstance

Identifica un modulo che contiene risorse stringa da usare nel foglio delle proprietà. I metodi ISecurityInformation::GetAccessRights e ISecurityInformation::GetInheritTypes possono specificare identificatori di risorsa stringa per i nomi visualizzati.

pszServerName

Puntatore a una stringa Unicode con terminazione null che assegna un nome al computer in cui cercare nomi di account e SID. Questo valore può essere NULL per specificare il computer locale. L'editor di controllo di accesso non libera questo puntatore.

pszObjectName

Puntatore a una stringa Unicode con terminazione null che assegna un nome all'oggetto modificato. Questo nome viene visualizzato nel titolo della scheda delle proprietà di sicurezza avanzata e nelle caselle di messaggio di errore visualizzate dall'editor di controllo di accesso. L'editor di controllo di accesso non libera questo puntatore.

pszPageTitle

Puntatore a una stringa Con terminazione Null, Unicode utilizzata come titolo della pagina delle proprietà di sicurezza di base. Questo membro viene ignorato a meno che il flag di SI_PAGE_TITLE sia impostato in dwFlags. Se il titolo della pagina non viene specificato, viene usato un titolo predefinito. L'editor di controllo di accesso non libera questo puntatore.

guidObjectType

GUID per l'oggetto . Questo membro viene ignorato a meno che il flag di SI_OBJECT_GUID sia impostato in dwFlags.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione aclui.h

Vedi anche

ISecurityInformation

ISecurityInformation::GetAccessRights

ISecurityInformation::GetInheritTypes

ISecurityInformation::GetObjectInformation

ISecurityInformation::GetSecurity

ISecurityInformation::SetSecurity