Thursday, April 02, 2015

Environmental surroundings – creating variables to access AD objects



Hi all out there.

If you are working with logon or startup scripts, you usually access computer or user properties through environment variables like %userdomain% or %computername%.

The challenge

Our company often deals with trusts. This means %userdomain% is different from the computer’s domain. Unfortunately there’s no variable %computerdomain% nor %computerdnsdomain%.

In addition, we often access domain, user or computer attributes. Usually, you get the domain from the RootDSE object (https://msdn.microsoft.com/library/aa393248.aspx), but for computers and users, you have to search. And searching results in domain controller load – it would be more convenient if we could bind directly. For that, we need the distinguishedName of our objects.

If we manage to provide distinguished names in environment variables, they can be used easily, and no more searching is required. So we want to provide the following variables:

  • ComputerDomain: The NetBIOS name of the computer’s domain 
  • ComputerDNSDomain: The FQDN of the computer’s domain 
  • ComputerDomainDN: The Distinguished Name of the computer’s domain 
  • ComputerNameDN: The Distinguished Name of the computer account 
  • UserDomainDN: The Distinguished Name of the user’s domain 
  • UserNameDN: The Distinguished Name of the user account 
  • UserSID: The Security Identifier of the user account

The UserSID isn’t really in scope, but hey, we are working on it anyway :-)

Wednesday, April 01, 2015

MVP-Award 2015

Jupp :-)))

SMTP;   Wed, 1 Apr 2015 09:12:33 -0500



Microsoft MVP Banner

Sehr geehrte(r) Martin Binder,

herzlichen Glückwunsch! Wir freuen uns, Ihnen den Microsoft® MVP Award 2015 verleihen zu können! Diese Auszeichnung wird an herausragende, führende Mitglieder der technischen Communities verliehen, die ihre wertvollen praktischen Erfahrungen mit anderen Menschen teilen. Wir schätzen Ihren außerordentlich bedeutenden Beitrag in den technischen Communities zum Thema Group Policy im vergangenen Jahr hoch ein.

Wer bin ich und was darf ich - Gruppenmitgliedschaften und Benutzerrechte


Hallo Ihr da im Netz :)

Wenn Ihr eine Domäne verwaltet, dann möchtet Ihr steuern, wer sich an welchen Computern anmelden darf und ob er dort dann Admin oder nur Benutzer ist. Das macht Ihr natürlich mit Gruppenrichtlinien, und Ihr verwendet dafür

  • Eingeschränkte Gruppen - Legt fest, welche Domänengruppen/-benutzer Mitglied welcher lokalen Gruppen werden
  • Zuweisen von Benutzerrechten - Legt fest, welche lokalen oder Domänengruppen welche Rechte bekommen (z.B. lokal oder über RDS anmelden, Zeit oder Zeitzone ändern etc.)

Im Folgenden zeige ich Euch eine Variante für diese Einstellungen, die Euch das Leben deutlich einfacher machen kann.


Saturday, March 28, 2015

Umgib mich - Variablen für AD-Pfade


Hallo miteinander.

Wenn Ihr mit Computerstart- oder Anmeldeskripts arbeitet, verwendet Ihr darin bestimmt gelegentlich %computername% oder %userdomain% und ähnliches.

Die Herausforderung

Wir arbeiten häufig mit Trusts. Dabei ist dann natürlich %userdomain% nicht die Domäne des Computers. Also möchten wir zusätzliche Variablen %computerdomain% und %computerdnsdomain% erstellen.

Außerdem haben wir festgestellt, dass in unseren Skripts auch relativ häufig auf die AD-Objekte von Domäne, Computer oder Benutzer zugegriffen wird. Normalerweise holt man sich die Domäne aus RootDSE. Computer und Benutzer muss man aber im AD suchen. Und eine Suchanfrage erzeugt natürlich Last auf dem Domain Controller – besser wäre es, wenn ich also direkt binden kann. Dazu brauche ich den Distinguished Name meiner Objekte.
Wenn ich diesen Distinguished Name als Umgebungsvariable bereitstelle, kann er beliebig verwendet werden, und niemand muss mehr danach suchen.

Konkret wollen wir folgende Variablen bereitstellen:
  • ComputerDomain: Der Netbios-Name der Computerdomäne
  • ComputerDNSDomain: Der FQDN der Computerdomäne
  • ComputerDomainDN: Der Distinguished Name der Computerdomäne
  • ComputerNameDN: Der Der Distinguished Name des Computerkontos
  • UserDomainDN: Der Distinguished Name der Benutzerdomäne
  • UserNameDN: Der Distinguished Name des Benutzerkontos
  • UserSID: Der Security Identifier des Benutzerkontos 
Die UserSID brauchen wir eigentlich nicht, aber wenn wir schon mal dabei sind :)