Einzelnen Beitrag anzeigen

TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.205 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Actice Directory Gruppenzugehörigkeit als NichtAdmin lesen

  Alt 6. Feb 2023, 13:39
Ich greife auf das AD mit TADOQuery und LDAP zu + hatte da kein Problem mit Adminrechten oder so.

Dieses zB um den SID des aktuellen UISers zu bekommen:

Delphi-Quellcode:
var
  adoConnectionData: TADOConnection;
  qQuery: TAdoQuery;
  s: string;
  sSql: string;
  v: variant;
  oSID: PSID;
...
begin
    adoConnectionData := TADOConnection.Create(nil);
    qQuery := TADOQuery.Create(nil);
    qQuery.Connection := adoConnectionData;
    adoConnectionData.Name := 'adoConnectionData';
    adoConnectionData.ConnectionString := 'Mode=Read;';
    adoConnectionData.LoginPrompt := False;
    adoConnectionData.Provider := 'ADsDSOObject';
    adoConnectionData.Connected := True;
    sSql := 'select objectSID from ''LDAP://' + sDomain + ''' where objectClass=''person'' and sAMAccountName=' + QuotedStr(sUSername);
    qQuery.SQL.Text := sSql;
    qQuery.Open;
    v := qQuery.Fields[0].Value;
    oSID := VarArrayLock(v);
    s := SIDToString(oSID);
    VarArrayUnlock(v);
    Result := s;
end;
  Mit Zitat antworten Zitat