Español
Stammtisch & Café

LsaAddAccountRights

 


Descripción:

El API LsaAddAccountRights fügt una Account Privilegien hinzu. Diese Función hay sólo bajo NT-basierten Windowssystemen. Hinzugefügte Privilegien voluntad natürlich sólo después de el erneuten Einloggen des speziellen Users aktiv.




Deklaration:

DEF @LsaAddAccountRights(4) !advapi32,LsaAddAccountRights




Parámetro:

1.Parámetro: Con el LSAOpenPolicy erhaltene Handle des Policy Objektes como Longint. Das Handle muß con POLICY_CREATE_ACCOUNT y POLICY_LOOKUP_NAMES geöffnet voluntad.
2.Parámetro: Bereichsvariable con el SID des Accounts, a el el Privilegien hinzugefügt voluntad debería.
3.Parámetro: Bereichvariable con un Array de LSA_UNICODE_STRING Estructuras, el Angaben en hinzuzufügenden Privilegien enthält. =>
·Byte 0-1 = El Lange des Cuerdas en Bytes, en el Byte 4-7 verweist.
·Byte 2-3 = El Longitud des Bereichs en Bytes, en el Byte 4-7 verweist.
·Byte 4-7 = Beliebig, aber ausreichend große Bereichsvariable con un String en el Unicode Formato, el el Namen uno hinzuzufügenden Privilegs enthält.
·Byte 8-9 = El Lange des Cuerdas en Bytes, en el Byte 12-15 verweist.
·Byte 10-11 = El Longitud des Bereichs en Bytes, en el Byte 12-15 verweist.
·Byte 12-15 = Beliebig, aber ausreichend große Bereichsvariable con un String en el Unicode Formato, el el Namen uno hinzuzufügenden Privilegs enthält.
·usw...
4.Parámetro: El Anzahl el hinzuzufügenden Privilegien de Parámetro 3.



Rückgabewert:

0 en Erfolg, ansonsten una NT-Status Fehlercode (LongInt), el con LsaNtStatusToWinError en una Systemfehlercode umgewandelt voluntad kann.


Beispiele:

KompilierenMarcaSeparación
DEF @LsaOpenPolicy(4) !"advapi32","LsaOpenPolicy"
DEF @LsaClose(1) !"advapi32","LsaClose"
DEF @LsaNtStatusToWinError(1) !"advapi32","LsaNtStatusToWinError"
DEF @LsaAddAccountRights(4) !"advapi32","LsaAddAccountRights"
DEF @MultiByteToWideChar(6) !"kernel32","MultiByteToWideChar"
DEF @LookupAccountName(7) !"advapi32","LookupAccountNameA"
DEF @GetACP(0) !"kernel32","GetACP"
Declare Fehler&,UNICODE#,Attribut#,POLICY_Handle#
Declare Policy_Handle&,PrivilegSET#,PRIVILEG#
Declare SID#,DOMAIN#,SID_TYPE_INDICATOR#,DOMAIN#,Attribut#,ALLPRIVS#,COUNT#,SID#,DOMAINNAME_SIZE_ADDR#
Declare SYSTEM$,DOMAIN$,SID_Size#,Account$
Struct LSA_UNICODE_STRING=Length%,MaximumLength%,Buffer&
DIM UNICODE#,LSA_UNICODE_STRING
Clear UNICODE#
Struct LSA_OBJECT_ATTRIBUTES=Length&,RootDirectory&,Length%,MaximumLength%,Buffer&,Attributes&,SecurityDescriptor#(4),SecurityQualityOfService#(4)
DIM Attribut#,LSA_OBJECT_ATTRIBUTES
Clear Attribut#
DIM ALLPRIVS#,2000
DIM COUNT#,4
DIM DOMAIN#,256
DIM SID#,800
DIM SID_Size#,4
DIM DOMAINNAME_SIZE_ADDR#,4
DIM SID_TYPE_INDICATOR#,256
DIM POLICY_Handle#,4
DIM PRIVILEG#,100
DIM PrivilegSET#,100
Windowstyle 31
Windowtitle "Einem Account das Privileg zum Ändern der Systemzeit hinzufügen."
Window 0,0-640,440
CLEAR SID#,DOMAIN#,SID_TYPE_INDICATOR#,DOMAIN#,Attribut#,ALLPRIVS#,COUNT#,SID#,DOMAINNAME_SIZE_ADDR#
Long SID_Size#,0=800
LONG DOMAINNAME_SIZE_ADDR#,0=255
LET SYSTEM$=""
LET ACCOUNT$=@input$("Accountnamen eingeben (kein Alias):","Account","Gast")
LET Fehler&=@LookupAccountName(@ADDR(System$),@addr(ACCOUNT$),SID#,SID_Size#,DOMAIN#,DOMAINNAME_SIZE_ADDR#,SID_TYPE_INDICATOR#)
Print "Rückmeldung von LookupAccountName="+@STR$(Fehler&)

If Fehler&=1

    LET Fehler&=@LsaOpenPolicy(0,Attribut#,$10 | $0800,POLICY_Handle#)
    Print "Rückmeldung von LsaOpenPolicy="+@STR$(Fehler&)
    Let Fehler&=@LsaNtStatusToWinError(Fehler&)
    PRINT "LsaOpenPolicy Rückmeldung umgewandelt in Windows Fehlercode="+@STR$(Fehler&)
    LET Policy_Handle&=@LONG(POLICY_Handle#,0)
    Print "Geliefertes Handle="+@STR$(Policy_Handle&)

    IF Fehler&=0

        CLEAR UNICODE#,PrivilegSET#,PRIVILEG#
        STRING PrivilegSET#,0="SeSystemtimePrivilege"
        LET Fehler&=@MultiByteToWideChar(@GetACP(),0,PRIVILEGSET#,-1,PRIVILEG#,100)
        Print "Rückmeldung von MultiByteToWideChar="+@STR$(Fehler&)
        UNICODE#.Buffer&=PRIVILEG#
        UNICODE#.Length%=@LEN("SeSystemtimePrivilege")*2
        UNICODE#.MaximumLength%=100
        LET Fehler&=@LsaAddAccountRights(Policy_Handle&,SID#,UNICODE#,1)
        Print "Rückmeldung von LsaAddAccountRights="+@STR$(Fehler&)
        Let Fehler&=@LsaNtStatusToWinError(Fehler&)
        PRINT "LsaAddAccountRights Rückmeldung umgewandelt in Windows Fehlercode="+@STR$(Fehler&)
        LET Fehler&=@LsaClose(Policy_Handle&,0)
        Print "Rückmeldung von LsaClose="+@STR$(Fehler&)
        Let Fehler&=@LsaNtStatusToWinError(Fehler&)
        PRINT "LsaClose Rückmeldung umgewandelt in Windows Fehlercode="+@STR$(Fehler&)

    Endif

endif

Dispose POLICY_Handle#
Dispose ALLPRIVS#
Dispose COUNT#
Dispose DOMAIN#
Dispose SID#
Dispose SID_Size#
Dispose DOMAINNAME_SIZE_ADDR#
Dispose SID_TYPE_INDICATOR#
Dispose POLICY_Handle#
Dispose PRIVILEG#
Dispose PrivilegSET#

While 0=0

    nput

Wend

 
08.04.2005  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

2.385 Views

Untitledvor 0 min.

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie