_AD_IsMemberOf Beispiel

  • Morgen alleminteinander


    Ich habe mir etz mal AutoIt näher angeschaut und es ist ein sehr interessantes Tool.

    Da ich aber ziemlich neu in der Materie bin, bitte ich bei doofen Antworten oder sonstiges um Nachsicht.

    Zu meinem Problem:

    Wir haben einen Service, der mit einer SSL Verbindung vom Browser aufgerufen wird.

    Dieser Service, soll über ein AutoIt skript nur dann aufgerufen werden, wenn ein besimmter user in einer bestimten Gruppe ist.
    Ich habe uach schon ein bißchen was gesucht, und habe das hier gefunden AD_IsMemberOf ich denke das müßte das richtige Script für mein Problem sein.
    Ich muss aber ganz ehrlich gestehen, das ich in der Syntax nicht so ganz durchblicke.
    Also wenn jemand das Script mit Beispielwerten versehen könnte, sodass ich mich dann an das Verständnis der Syntax in diesem Zusammenhang rantaste... dem wäre ich sehr verbunden

    BESTE grüße

    skyerjoe :)

  • Aus dem Beispiel der AD.au3

    Spoiler anzeigen
    [autoit]

    #include <AD.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $aUser, $sFQDN_Group, $sFQDN_User, $iResult

    [/autoit] [autoit][/autoit] [autoit]

    ; Open Connection to the Active Directory
    _AD_Open()

    [/autoit] [autoit][/autoit] [autoit]

    ; Get the Fully Qualified Domain Name (FQDN) for the current user
    $sFQDN_User = _AD_SamAccountNameToFQDN()

    [/autoit] [autoit][/autoit] [autoit]

    ; Get an array of group names (FQDN) that the current user is immediately a member of
    $aUser = _AD_GetUserGroups(@UserName)
    $sFQDN_Group = $aUser[1]

    [/autoit] [autoit][/autoit] [autoit]

    ; Check the group membership of the specified user for the specified group
    $iResult = _AD_IsMemberOf($sFQDN_Group, $sFQDN_User)
    Select
    Case $iResult = 1
    MsgBox(64, "Active Directory Functions", _
    "User: " & $sFQDN_User & @CRLF & _
    "Group: " & $sFQDN_Group & @CRLF & _
    "User is a member of the specified group!")
    Case ($iResult = 0 And @error = 1)
    MsgBox(64, "Active Directory Functions", _
    "User: " & $sFQDN_User & @CRLF & _
    "Group: " & $sFQDN_Group & @CRLF & _
    "Group does not exist!")
    Case ($iResult = 0 And @error = 2)
    MsgBox(64, "Active Directory Functions", _
    "User: " & $sFQDN_User & @CRLF & _
    "Group: " & $sFQDN_Group & @CRLF & _
    "User does not exist!")
    Case ($iResult = 0)
    MsgBox(64, "Active Directory Functions", _
    "User: " & $sFQDN_User & @CRLF & _
    "Group: " & $sFQDN_Group & @CRLF & _
    "User is a not member of the specified group!")
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    ; Close Connection to the Active Directory
    _AD_Close()

    [/autoit]
  • Grüß dich LuBU

    Zitat

    Aus dem Beispiel der AD.au3

    Wie schon gesagt ich verstehe die Syntax in diesem Zusammenhang überhaupt nicht ( Bitte nicht hauen:)). Weil ich beim besten Willen nicht weiß, wo ich die Variablen mit meinen eigenen Daten füllen muss.

    Deshalb war ja auch meine Bitte ein Beispiel dazu zubringen.

    Beste Grüße

    skyerjoe

    Einmal editiert, zuletzt von skyerjoe (15. April 2011 um 12:47)

  • Da ich nicht viel mit AD zu tun habe, weiß ich es nicht genau,
    aber eigentlich solltest du das Beispielscript einfach ausführen können,
    mit den Ergebnissen kannst du dann ja mal weiter schauen

  • Hallo Sprenger120

    Zitat

    Hier gibts ein AutoIt Tutorial

    Des habe ich auch schon gelesen Teil 1 ... aber... vielleicht hakts bie mir auch mit dem Verbdund Syntax und AD Befehle


    Also am besten, bevor ich jeden unnötig was posten lasse, kennt sich jemand mit AD aus, und hat auch des know how die Funktionen zu verstehen ( und vielleicht ein biißchen Luft :)).. wenn ja dann wäre wie gesagt ein AD-Beispiel nicht schlecht.


    beste grüße skyerjoe

  • Als Autor der UDF sollte ich mich etwas auskennen :) Ich melde mich nächste Woche zu dem Problem.

  • Folgende Schritte sind mindestens notwendig um zu prüfen, ob der angemeldete User Mitglied einer Gruppe ist:

    [autoit]

    #include <AD.au3>
    Global $iResult, $sGroup = "Gruppe"
    _AD_Open()
    $iResult = _AD_IsMemberOf($sGroup)
    _AD_Close()

    [/autoit]


    $iResult kann dann folgende Werte haben:
    0 - $sUser is not a member of $sGroup
    1 - $sGroup does not exist
    2 - $sUser does not exist

    In $sGroup kannst Du entweder den SamAccountName oder den Fully Qualified Domain Name (FQDN) der Gruppe angeben.