Delsystemet for UNIX-baserte programmer (SUA) inneholder et POSIX-kompatibelt delsystem som kjører på UNIX-skall, systemverktøy og opprinnelige programmer ved siden av Microsoft® Windows®-programmene. Dette emnet omhandler noen arbeidshensyn for brukere som krever et POSIX-kompatibelt operativsystem.

POSIX-skallkompatibilitet

SUA Korn-skall følger tradisjonell Korn-skallatferd, som er nesten identisk med POSIX-atferd. Hvis du trenger nøyaktig POSIX-tilpasning, som noen arbeidsmiljøer krever, se forskjellene mellom Korn-skall og POSIX i ksh(1)-dokumentasjonen i hjelpfilene i nedlastingspakken Verktøy og SDK for delsystem for Unix-baserte programmer.

Du oppnår full POSIX.2-tilpasning fra Korn-skallet ved å kjøre Korn-skallet i POSIX-modus. Hvis du vil kjøre Korn-skallet i POSIX-modus, må du gjøre ett av følgende:

  • Åpne Korn-skallet med -o posix-alternativet.

  • Kjør kommandosettet -o posix fra skallet.

  • Sett opp POSIXLY_CORRECT-skallparameteren.

POSIX-tilpasning støttes ikke i C-skallet. I motsetning til Korn-skallet, har C-skallet ingen kommandoalternativer for POSIX-modus.

Traverseringskontroll for mappetillatelser

Som standard har Windows-brukere tillatelser til å flytte gjennom mappetreet, selv om de kanskje ikke har tilgangstillatelser til hver mappe i banen. Du har ikke tilgang til POSIX-systemene med mindre du har tillatelse til å bruke alle mappene i mappebanen. Denne POSIX-atferden kalles traverseringskontroll. Hvis du for eksempel ikke har tillatelse til å bruke en mappe, kan du ikke endre gjeldende mappe til noen av undermappene, selv om du har tillatelse til å bruke undermappene. Som standard i Windows kan du endre gjeldende mappe til undermapper du har tillatelse til å bruke.

I Windows er det en spesiell tillatelse, kalt Traversere mappe / Kjøre fil-tillatelse som du kan sette opp for en bruker eller en gruppe. Du kan konfigurere denne tillatelse til å gi godta eller avslå bevegelse gjennom et mappetre. Traversere mappe-tillatelsen aktiveres bare når gruppen eller brukeren ikke har brukerrettigheten Hopp over traverseringskontroll i snapin-modulen Gruppepolicy. Microsoft Windows 2000 gis Alle-gruppen brukerrettigheten Hopp over traverseringskontroll som standard. I operativsystemene Windows Server® 2008 R2, Windows® 7, Windows Server® 2008, Windows Vista®, Windows Server 2003 og Windows XP, har administratorer, sikkerhetskopioperatører, alle, privilegerte brukere og brukergrupper denne rettigheten. For streng overholdelse av POSIX-standardene må du fjerne Hopp over traverseringskontroll fra alle brukere og grupper, bortsett fra sikkerhetsoperatørgruppen. Privilegiene gitt til rotbrukere på mange andre UNIX-implementeringer overholdes ved å fjerne Hopp over traverseringskontroll for alle brukere, bortsett fra administratorer og sikkerhetsoperatørgrupper.

Virkemåteavvik for traverseringskontroll for su og setuid

Rotbrukere som bruker su-kommandoen for å kjøre som andre brukere, og brukere som bruker setuid-prosesser (og prosesser som inkluderer setuid-relaterte kall), avviker fra standard virkemåte som er beskrevet ovenfor, ved å beholde noen katalogtraverseringsrettigheter.

Hvis du fjerner rettigheten Hopp over kontroll av traversering fra brukerkontoer, fører det til POSIX-kompatibel virkemåte. Hvis en rotbruker imidlertid prøver å kjøre su på en annen bruker uten å angi et passord, har ikke resultatøkten virkemåten som er beskrevet ovenfor. Prosesser som er startet, etter at en rotbruker kjører su uten å angi et passord, har tilgang til og kan flytte seg i et katalogtre, selv om de kanskje ikke har tilgangstillatelse til alle katalogene i banen.

Setuid-prosesser, og prosesser som kaller setuid, seteuid eller setreuid, har også samme virkemåte. Når rettigheten Hopp over kontroll av traversering er fjernet fra brukerkontoen til brukeren som kjører prosessene, kan prosessene flytte seg i et katalogtre, selv om de mangler tilgangstillatelse til alle katalogene i banen.

Se også