DU3

Odeslat odpověď

Smajlíci
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode je zapnutý
[img] je zapnutý
[flash] je vypnutý
[url] je zapnuté
Smajlíci jsou zapnutí

Přehled tématu
   

Rozšířit náhled Přehled tématu: DU3

od Kate » 7. 12. 2006 23:28

paráda, tohle forum bude za chvili lepsi než google :wink:

to joshis: diky za nesobeckou snahu pomoci kamaradum (a kamaradkam :)), az priste zase dostanes cerny puntik, tak slibuju, ze nebudu hlasovat pro to, abys dostal jeste jeden :lol:

to eubie:
diky za reakci, ja se uz ptala a pochopila jsem to tak, ze na zapocet nam musi behat ty nase milovany serveriky tak, jak maji (o zadnych zakernostech nebyla rec) a ze na konci semestru napiseme nejaky skript ci co (udajne urovne "da se to zvladnout i na cvikach").

kazdopadne, vse by me tesilo vic, nez pomluvy, ktere se ke me dostaly a podle kterych bychom si meli v zaveru skodit v nasich domenach navzajem (kdo prezije, vyhraje). to by se mi teda fakt nelibilo (a ne jen z duvodu, ze nevim, jak bych vam uskodila :twisted: )

od joshis » 7. 12. 2006 10:38

Eubie: :lol: :lol: :lol: :lol: :lol:

(omlouvam se za vysokou hodnotu tohoto prispevku)

od Eubie » 7. 12. 2006 07:03

Uau, máš u mě žvejku!!:) Díky

Par vice detailnich linku...

od joshis » 6. 12. 2006 22:02

Ahoj Eubie (a ostatni),

nechce se mi to ted psat (...no dobre... priznavam... neumim to :-D ), proto poslu typ odpovedi, ktery sam bytostne nesnasim: odkazy jinam. Ostatne myslim, ze na strankach, ktere jsem uvedl vyse, to vse najdes - je tam ukazka VBScriptu specialne pro praci s AD. Pro jistotu sem prilepim jeden "hlubsi" link se stejne stranky:

http://www.cruto.com/resources/vbscript ... sers/list/

a mozna jeste jeden podrobnejsi - "List All the Attributes of the User Class":

http://www.cruto.com/resources/vbscript ... -Class.asp

kde najdes nasledujici kod (vypisujici povinne a volitelne atributy objektu typu "user"):

Kód: Vybrat vše

Set objUserClass = GetObject("LDAP://schema/user")
Set objSchemaClass = GetObject(objUserClass.Parent)
 
i = 0
WScript.Echo "Mandatory attributes:"
For Each strAttribute in objUserClass.MandatoryProperties
    i= i + 1
    WScript.Echo i & vbTab & strAttribute
    Set objAttribute = objSchemaClass.GetObject("Property",  strAttribute)
    WScript.Echo " (Syntax: " & objAttribute.Syntax & ")"
    If objAttribute.MultiValued Then
        WScript.Echo " Multivalued"
    Else
        WScript.Echo " Single-valued"
    End If
Next
 
WScript.Echo VbCrLf & "Optional attributes:"
For Each strAttribute in objUserClass.OptionalProperties
    i=i + 1
    WScript.Echo i & vbTab & strAttribute
    Set objAttribute = objSchemaClass.GetObject("Property",  strAttribute)
    WScript.Echo " [Syntax: " & objAttribute.Syntax & "]"
    If objAttribute.MultiValued Then
        WScript.Echo " Multivalued"
    Else
        WScript.Echo " Single-valued"
    End If
Next
(Vystup skriptu jsem v prilozil (v ramci zachovani rozumne delky prispevku) do samostatneho souboru...)

Nevim, jestli jsi hledal zrovna tohle, jestli ne, zkus radeji ten prvni link ;) . Prumerne zdatny programator to uz podle me nejak sezvejka 8) .
Přílohy
out_vbs.txt
Vystup skriptu
(14.94 KiB) Staženo 274 x

od Eubie » 6. 12. 2006 19:26

to joshis: Díky!

Měl byste někdo skript na řešení tohohle? :

Kód: Vybrat vše

1. Vypsat textové informace o userovi
2. vypsat všechny informace jednoduchých typů
3. vypsat všechny informace
Jde mi o to, jestli na to neni nějaká funkce jako GetAllSimpleAttribs nebo tak něco:) Řešení že vykoukam na DC jaký atributy kdo má a vypíšu je ( ručně je vyjmenuju ve skriptu ) mi nepřijde dost záludný a neobstává Obdržálkově stylu výuky "googluj a uč se!".

Re: Dalsi domaci ukol ...

od Eubie » 6. 12. 2006 19:18

Kate píše:
Dan píše:Domaci ukol: napsat kus scriptu ktery zjisti datum o uzivateli a vypise ho v rozumne forme
to jako budeme ted delat domaci ukoly nejak pravidelne? a je to nutne na zapocet? mam nejak nedostatek informaci :oops: . tak me napada, za co vlastne bude zapocet? 8)
Zapich pry bude za napraveni nejake nekalosti, kterou obrdzalek provede do nasi domeny. Osobne si ale myslim, ze nam, stejne jako v minulych letech, zkontroluje, jestli nam vsechno funguje bez erroru, a bude to. Resp. kez by:)

od jaruch » 1. 12. 2006 13:23

mozno som celkom mimo, ale kde sa da najst zoznam tych atributov?
lebo to co je v tom skripte hore som nikde nenasiel ako atribut, ale funguje to a naopak... :roll:

od joshis » 29. 11. 2006 14:12

Moje reseni 2. domacaku, snad bude nekomu uzitecne. Skript vypise expiration date pro ucet dany parametrem prikazove radky (cscript script.vbs "Administrator").

Kód: Vybrat vše

' script.vbs

Set oArgs = WScript.Arguments
userName = oArgs(0)

Set oUser = GetObject("LDAP://cn=" & userName & ", cn=Users, dc=domain, dc=com")
expDate = oUser.AccountExpirationDate 
 
If expDate <= "1/1/1970" Then
    WScript.Echo "No account expiration date specified for " & userName
Else
    WScript.Echo "Account expiration date for " & userName & ": " & expDate
End If
Dalsi co lze vypisovat je treba last logon, last logoff...

Více na:
http://www.cruto.com/resources/vbscript ... -examples/

Good Luck

Re: Dalsi domaci ukol ...

od Kate » 27. 11. 2006 01:01

Dan píše:Domaci ukol: napsat kus scriptu ktery zjisti datum o uzivateli a vypise ho v rozumne forme
to jako budeme ted delat domaci ukoly nejak pravidelne? a je to nutne na zapocet? mam nejak nedostatek informaci :oops: . tak me napada, za co vlastne bude zapocet? 8)

Dalsi domaci ukol ...

od Dan » 24. 11. 2006 01:05

Domaci ukol: napsat kus scriptu ktery zjisti datum o uzivateli a vypise ho v rozumne forme



toto je moja verzia domaceho ukolu .. original verzia :
http://www.rlmueller.net/Integer8Attributes.htm

info o tom type:
http://msdn.microsoft.com/library/defau ... nteger.asp

Kód: Vybrat vše

Function EightByteIntToDate(objDate, posun)
' funkce konvertuje large Integer/Interval na datumovy podtyp VARIANTu
' posun je minutovy posun oproti GMT ... CR,SK = - 60   
    Dim lngAdjust, lngDate, lngHigh, lngLow
    lngAdjust = posun
    ' tieto funkce su zo standardneho typu lADslargeInteger
    lngHigh = objDate.HighPart
    lngLow = objdate.LowPart
    ' IADslargeInteger je znamenkovy typ a ak najvyssi bit je jedna tak to berie za zaporne cislo
    ' predpoklada sposob ukladania zapornych cisel pomocou bitoveho doplnku
    If (lngLow < 0) Then
        lngHigh = lngHigh + 1
    End If
    If (lngHigh = 0) And (lngLow = 0) Then
        lngAdjust = 0
    End If
    ' datum je ulozeny v stovkach nanosekund
    lngDate = #1/1/1601# + (((lngHigh * (2 ^ 32)) _
        + lngLow) / 600000000 - lngAdjust) / 1440
    ' osetrenie errorov
    On Error Resume Next
    ' CDate vracia datumovy podtyp VARIANTu
    EightByteIntToDate = CDate(lngDate)
    If (Err.Number <> 0) Then
        On Error GoTo 0
        EightByteIntToDate = #1/1/1601#
    End If
    On Error GoTo 0
End Function

wscript.echo "=== Konverzie datumov ==="
Set myUser =GetObject("LDAP://CN=Administrator,CN=Users,DC=matfyz,DC=vojtek,DC=cz")

' tie atributy som nasiel pomocou toolu ADSIedit
set passwordLastSet = myUser.get("pwdLastSet")
set userLastLogon = myUser.get("lastLogon")

wscript.echo "Datum poslednej zmeny hesla:  " & EightByteIntToDate(passwordLastSet,-60)
wscript.echo "Datum posledneho zalogovania: " & EightByteIntToDate(userLastLogon,-60)

wscript.Echo "THE END "

Nahoru