Vis Eller Fjern Active Directory Delegerte Tillatelser
Active Directory-delegering (AD) er en viktig del av mange organisasjoners it-infrastruktur. Ved å delegere administrasjon kan du bare gi brukere eller grupper de tillatelsene de trenger uten å legge til brukere i privilegerte grupper (F.eks. Domeneadministratorer, Kontooperatører). Den enkleste måten å utføre delegering på er Å bruke Veiviseren For Delegering Av Kontroll i snapin-modulen Microsoft Management Console (MMC) Active Directory-Brukere og-Datamaskiner.
Relatert: Administrere Active Directory Med PowerShell
Selv Om Veiviseren For Delegering av Kontroll gir en enkel måte å delegere tillatelser på, er det ingen tilsvarende veiviser for å fjerne delegerte tillatelser. Noen På Microsoft må ha lagt merke til denne mangelen og opprettet et kommandolinjeprogram kalt Dsrevoke.exe som kan fjerne tillatelsesoppføringene lagt til Av Delegering Av Kontrollveiviseren.
imidlertid Dsrevoke.exe-programmet har to viktige tekniske begrensninger, som er dokumentert i Microsoft-artikkelen ” når Du bruker kommandolinjeverktøyet dsrevoke til å rapportere tillatelser for alle organisatoriske enheter i Et Windows Server 2003-basert domene, kan verktøyet ikke returnere alle tilgangskontrolloppføringene.”Disse begrensningene er:
- Dsrevoke.exe kan finne bare opp til 1000 OUs i et enkelt søk. Den foreslåtte løsningen for denne begrensningen er å starte programmets søk i en dypere nestet organisasjonsenhet (ou) for å redusere antall resultater.
- Dsrevoke.exe mislykkes hvis Noen OUs inneholder et skråstrek ( / ) tegn i navnene sine. Det er ingen løsning for denne begrensningen annet enn å omdøpe den fornærmende OUs.
når du arbeider Med Dsrevoke.exe nylig var jeg i stand til å omgå det første problemet, men da løp jeg inn i det andre problemet. Av organisatoriske grunner var det ikke et alternativ å omdøpe OUs for å fjerne slash-tegnet. Dessuten er skråstreken et gyldig tegn i ET ou-navn, og Dsrevoke.exe skal fungere uansett om EN OU inneholder en skråstrek i navnet eller ikke. Også arbeidet rundt 1000 ou-grensen i mitt miljø var tidkrevende.
på grunn av disse problemene bestemte jeg meg for å se om det var noen innebygde alternativer Til Dsrevoke.exe. Starter i nyere versjoner Av Windows, Dsacls.exe-programmet gir en måte å fjerne tillatelsene lagt Til Av Delegering Av Kontrollveiviseren. Selv om det ikke mislykkes hvis EN OU inneholder en skråstrek i navnet, Dsacls.exe kan ikke søke underbeholdere for tillatelser som Dsrevoke.exe gjør.
jeg bestemte meg først for å bare skrive et enkelt skript for å søke Etter OUs og ringe Dsacls.exe for å fjerne delegerte tillatelser fra hver OU. Men da jeg tenkte på hvordan jeg ønsket å designe et slikt skript, skjedde det for meg at jeg også vil se en liste over Hvilke OUs hadde tillatelser delegert til en bestemt bruker eller gruppe. Dsrevoke.exe og Dsacler.exe kan produsere en liste over tillatelser, men utgangen er veldig lang og teknisk. Jeg ville ha noe enklere.
på grunn av begrensningene I Dsrevoke.exe og Dsacler.exe, og mitt ønske om å få kortere utgang, bestemte jeg meg for Å skrive Et Windows PowerShell-skript for å få funksjonaliteten jeg ønsket. Resultatet Er Fjern-dsace. ps1. Før jeg diskuterer dette skriptet, må jeg imidlertid gi litt bakgrunnsinformasjon om hva som skjer når du bruker Delegering Av Kontrollveiviseren, samt dekke noen grunnleggende Windows – sikkerhetskonsepter.
Legge Til Delegerte Tillatelser Med Veiviseren
Som jeg tidligere nevnte, Gir Delegering Av Kontrollveiviseren en enkel måte å delegere tillatelser på. Anta for eksempel at du vil at medlemmer Av Gruppen For Tilbakestilling Av Passord skal kunne tilbakestille passord for brukere I ALLE Brukere-OU-En i ANNONSEDOMENET. For å gjøre dette må du utføre disse trinnene:
- Åpne Konsollen Active Directory-Brukere og Datamaskiner.
- Høyreklikk På ALLE Brukere OU og velg Representantkontroll, som vist I Figur 1. Klikk på neste-knappen for å gå forbi veiviserens velkomstside.
- klikk Legg til-knappen På siden Brukere Eller Grupper i veiviseren.
- i Dialogboksen Velg Brukere, Datamaskiner eller Grupper skriver du inn gruppens navn( Tilbakestilling Av Passord), klikker På Kontroller Navn-knappen for å sikre at gruppens navn er riktig, og klikker OK, som vist i Figur 2.
- når du har kontrollert at gruppens navn er oppført På Siden Brukere eller Grupper, klikker Du På Neste, som vist i figur 3.
- på Oppgaver Å Delegere-siden velger Du Tilbakestill brukerpassord og fremtvinger passordendring ved neste pålogging og klikker På Neste, som vist i Figur 4.
- Kontroller informasjonen på den siste siden i veiviseren, og klikk Fullfør.
Når Du klikker Fullfør, Legger Veiviseren For Delegering av Kontroll de forespurte tillatelsene Til ALLE Brukere OU. Du kan vise effekten av delegeringen ved å høyreklikke Alle Brukere OU, velge Egenskaper og velge kategorien Sikkerhet. (Hvis Kategorien Sikkerhet ikke er synlig, aktiverer Du Alternativet Avanserte Funksjoner På Vis-menyen I Active Directory-Brukere og Datamaskiner-konsollen.) For en detaljert visning kan du klikke På Avansert-knappen. Figur 5 viser Dialogboksen Avanserte Sikkerhetsinnstillinger som vises.
Acler, Ess og Trustees—Oh My!
hvis du vil forstå informasjonen som gis I Dialogboksen Avanserte Sikkerhetsinnstillinger, må du vite om Følgende Windows – sikkerhetskonsepter: TILGANGSKONTROLLLISTE (ACL), TILGANGSKONTROLLOPPFØRING (ACE), forvalter og arv. Du må også forstå disse konseptene for Å bruke Remove-dsace. ps1.
ACL. Det finnes to Typer Acler: skjønnsmessige Acler (Dacler) og system Acler (Sacler). EN DACL identifiserer kontoene som er tillatt eller nektet tilgang til et objekt. EN SACL beskriver hvordan en administrator ønsker å logge forsøk på å få tilgang til et objekt (dvs.overvåking).
ESS. EN ACL består av Ess. HVERT ESS identifiserer en forvalter og angir forvalterens tilgang (tillat, avslå eller overvåk) for objektet. Veiviseren For Delegering av Kontroll legger Til Ess i DACL FOR EN ANNONSEBEHOLDER. Figur 5 viser DACL For Alle Brukere OU. I denne figuren er begrepet tillatelsesoppføring synonymt MED ACE.
Forvalter. En forvalter er enheten (en bruker, sikkerhetsgruppe eller påloggingsøkt) SOM ET ESS gjelder for. HVERT ESS gjelder for en enkelt forvalter. I figur 5 er Begrepet Rektor synonymt med forvalter. Figur 5 viser at det er to Ess som er tildelt Gruppen For Tilbakestilling Av Passord. Med Andre ord, Passord Reset gruppen er bobestyrer (rektor) for disse to Ess.
Arv. ET ESS kan brukes direkte på et objekt, eller det kan arves fra ressursens overordnede objekt. I Figur 5 arves Ikke De To Essene for Alle Brukere OU som inneholder Gruppen Tilbakestilling av Passord som forvalter fra den overordnede beholderen (Dvs. Kolonnen Arvet Fra Leser Ingen) fordi Veiviseren For Delegering av Kontroll la Dem direkte til DACL. Figur 6 viser DACL for Regnskap OU. Regnskaps OUS DACL inneholder to Ess for Tilbakestillingsgruppen For Passord, men Disse Essene er arvet Fra Alle Brukere OU (Dvs.Den Arvede fra kolonnen leser OU=Alle Brukere,DC=fabrikam,DC=local).
Innføring Av Remove-dsace.ps1
jeg skrev Remove-dsace.ps1 (kort for fjern katalogtjeneste Ess) for å oppnå følgende mål:
- Finn OUs som inneholder ikke-arvede Ess som inneholder en trustee.
- Rekurser inn i Sub-OUs hvis ønskelig.
- Fjern Ikke-arvede Ess som inneholder en bobestyrer.
- Produsere konsis utgang.
skriptets syntaks er som følger:
Remove-DSACE path
parameteren-Rapport eller-Fjern bestemmer om skriptet vil liste eller fjerne Ikke-arvede Ess. Hvis du angir-Rapport, finner skriptet Ikke-arvede Ess som inneholder forvaltere, men det fjerner dem ikke. Hvis du angir-Fjern, fjerner skriptet De ikke-arvede Essene. Det er veldig viktig å forstå at skriptet vil fjerne alle ikke-arvede Ess for forvalteren, ikke Bare Ess lagt til Av Delegasjonen Av Kontrollveiviseren. Dette skyldes at det ikke er noen måte å bestemme hvordan De ikke-arvede Essene ble lagt til.
Parameterne-Rapport Og-Fjern er valgfrie, men skriptet antar-Rapportparameteren som standard. Skriptet vil kaste en feil hvis du angir begge parametrene samtidig.
du bruker Parameteren-Path til å angi Ett Eller Flere distinguished names (DNs) FOR AD OUs. Parameternavnet-Path er valgfritt og godtar pipeline-inngang. Selv om du kan angi Flere DNs, kan du ikke bruke jokertegn.
– Trustee-parameteren navngir trustee som skal finnes i Essene. Skriptet undersøker hver OU ER DACL for ikke-arvet Ess som inneholder den navngitte bobestyrer. Du kan angi flere forvaltere ved hjelp av en kommadelt liste eller en matrise, men du kan ikke bruke jokertegn. Du kan angi forvalternavn ved hjelp av noen av navneformatene som er oppført i Tabell 1.
Format | Eksempel |
---|---|
windows NT 4.0 navngi format (NT4) | FABRIKAM \ KenDyer |
objektets DN | CN = Ken Dyer,Cn = Brukere, DC=fabrikam, DC=com |
objektets kanoniske navn | fabrikam.com/Users/Ken Dyer |
objektets hovednavn (UPN )) |
du inkluderer parameteren-Recurse hvis du vil søke etter OUs under den angitte OU. Hvis du vil koble til EN bestemt DOMENEKONTROLLER (DC), kan du angi servernavnet med parameteren
-Servernavn. Både-Recurse-og-ServerName-parameterne er valgfrie.
skriptet støtter alternative legitimasjon. Parameteren-Legitimasjon bruker Et PSCredential-objekt som inneholder brukernavnet og passordet skriptet skal bruke til å koble til domenet.
skriptet støtter også-Confirm-parameteren. – Confirm-parameteren er bare meningsfull i kombinasjon med-Remove-parameteren. Parameteren-Confirm er aktivert som standard, med mindre du deaktiverer den ved å angi-Confirm:$FALSE eller ved å angi variabelen $ConfirmPreference Til None. Du bør bare deaktivere-Confirm-parameteren når du er helt sikker på at du fjerner de riktige Essene.
skriptet produserer utdataobjekter som inneholder egenskapene som er oppført I Tabell 2.
Eiendom | Beskrivelse |
---|---|
Sti | OUS DN |
Bobestyrer | bobestyrer navn I DOMENE \ navn format |
Ess | antall Ikke-arvede Ess i OUS ACL |
Resultat * | ordet “Fjernet”eller en feilmelding |
*Resultat-egenskapen finnes bare når du bruker parameteren-Fjern. |
skriptet inneholder bare OUs med ikke-arvet Ess som inneholder en bobestyrer. Arvet Ess for en bobestyrer er ikke inkludert i utdataene. Figur 7 viser to eksempler. Den første kommandoen i figur 7 gir ingen utdata fordi DACL for Regnskap OU ikke inneholder noen ikke-arvet Ess for Gruppen Tilbakestilling av Passord. (Regnskaps OU har to Ess for Passord Reset gruppen, men Disse Essene er arvet Fra Alle Brukere OU, som vist I Figur 6.) Den andre kommandoen i Figur 7 produserer utdata. Det er to Ikke-arvede Ess for Tilbakestillingsgruppen For Passord I Alle Brukere OU (som vist I Figur 5).
Real-World Eksempel
La oss se på hvordan Du kan bruke Remove-dsace. ps1 i den virkelige verden. Anta at en administrator i fabrikam.lokalt domene hadde brukt Delegering Av Kontrollveiviseren til å delegere tillatelser til Sekretærpersonalgruppen I Alle Brukere OU og noen Av OUs under den, men han husker ikke hvilken OUs. Du må fjerne disse delegerte tillatelsene slik at du kan delegere tillatelsene til andre grupper.
først må du se en liste OUs som har ikke-arvet Ess som inneholder Sekretærpersonalgruppen. For å gjøre dette kan du bruke kommandoen:
Remove-DSACE -Report ` -Path "OU=All Users,DC=fabrikam,DC=local" ` -Trustee "FABRIKAM\Secretarial_Staff" ` -Recurse | Format-List
denne kommandoen og dens utgang er vist i Figur 8.
fra denne utgangen kan du se at det er tre Ou-Er som ikke har arvet Ess som inneholder Sekretærpersonalgruppen. Etter at du har bekreftet at du kan fjerne Disse Essene, kan du erstatte-Report-parameteren med-Remove-parameteren og gjenta kommandoen, som vist i Figur 9. Som jeg nevnte tidligere, hvis Sekretærpersonalgruppen har blitt tildelt andre tillatelser utenfor Delegasjonen Av Kontrollveiviseren, vil de også bli fjernet.
Ta Kontroll Over Ad-Delegasjonen
Delegeringen Av Kontrollveiviseren er et veldig nyttig verktøy, men det er ingen enkel måte å raskt vise eller reversere effektene på. Selv om Du kan bruke Dsrevoke.exe og Dsacler.exe for å utføre disse oppgavene har disse verktøyene noen begrensninger. Hvis Du bruker Remove-dsace. ps1-skriptet i stedet, har du bedre kontroll over delegerte tillatelser I AD. Du kan laste ned dette skriptet ved å klikke Last Ned Koden-knappen øverst på siden.
Relaterte videoer fra Brian Desmond (KUN VIP-tilgang):
Økt 1: Mastering Av Active Directory-Tillatelser Delegering
Økt 2: Mastering Av Active Directory-Sikkerhetstillatelser Delegering
Leave a Reply