Självstudier: Skapa och hantera principer för att tillämpa efterlevnad
Det är viktigt att förstå hur du skapar och hanterar principer i Azure för att hålla dig kompatibel med företagets standarder och serviceavtal. I den här självstudien lär du dig att använda Azure Policy för att utföra några av de vanligaste uppgifterna som att skapa, tilldela och hantera principer i organisationen, exempelvis:
- Tilldela en princip för att genomdriva ett villkor för resurser som du skapar i framtiden
- Skapa och tilldela en initiativdefinition för att spåra efterlevnad för flera resurser
- Lösa en icke-kompatibel eller nekad resurs
- Implementera en ny princip i en organisation
Om du vill tilldela en princip för att identifiera dina befintliga resursers efterlevnadstillstånd går artiklarna i snabbstarten igenom det.
Förutsättningar
Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
Tilldela en princip
Det första steget för att tillämpa efterlevnad av Azure Policy är att tilldela en principdefinition. En principdefinition anger enligt vilket villkor en princip tillämpas och vilken åtgärd som ska vidtas. I det här exemplet tilldelar du den inbyggda principdefinitionen Med namnet Ärv en tagg från resursgruppen om den saknas för att lägga till den angivna taggen med dess värde från den överordnade resursgruppen till nya eller uppdaterade resurser som saknar taggen.
Gå till Azure Portal för att tilldela principer. Sök efter och välj Princip.
Välj Tilldelningar till vänster på sidan Azure Policy. En tilldelning är en princip som tilldelats ett specifikt område.
Välj Tilldela princip överst i principen | Sidan Tilldelningar .
På fliken Tilldela princip och Grundläggande väljer du Omfång genom att välja ellipsen och välja antingen en hanteringsgrupp eller prenumeration. Du kan även välja en resursgrupp. Ett omfång avgör vilka resurser eller grupper med resurser som principtilldelningen används i. Välj sedan Välj längst ned på sidan Omfång .
Resurser som kan uteslutas baserat på omfång. Undantag startar på en nivå som är lägre än nivån för Omfång. Undantag är valfria, så lämna det tomt just nu.
Välj ellipsen Principdefinition för att öppna listan med tillgängliga definitioner. Du kan filtrera principdefinitionen Typ som Inbyggt om du vill se alla och läsa deras beskrivningar.
Välj Ärv en tagg från resursgruppen om den saknas. Om du inte hittar den direkt skriver du ärver en tagg i sökrutan och trycker sedan på RETUR eller väljer ut ur sökrutan. Välj Välj längst ned på sidan Tillgängliga definitioner när du har hittat och valt principdefinitionen.
Versionen fylls automatiskt i till den senaste huvudversionen av definitionen och ställs in på autoinjest alla icke-icke-icke-bakåtkompatibla ändringar. Du kan ändra versionen till andra, om den är tillgänglig eller justera inmatningsinställningarna, men ingen ändring krävs. Åsidosättningar är valfria, så lämna det tomt för tillfället.
Tilldelningsnamn fylls i automatiskt med namnet på principen som du valde, men du kan ändra det om du vill. I det här exemplet lämnar du Ärv en tagg från resursgruppen om den saknas. Du kan också lägga till en valfri Beskrivning. Beskrivningen innehåller information om den här principtilldelningen.
Lämna principtillämpningen aktiverad. När den här inställningen är inaktiverad kan du testa resultatet av principen utan att utlösa effekten. Mer information finns i tvingande läge.
Välj fliken Parametrar överst i guiden.
För Taggnamn anger du Miljö.
Välj fliken Reparation överst i guiden.
Låt Skapa en reparationsuppgift vara avmarkerad. Med den här rutan kan du skapa en uppgift för att ändra befintliga resurser utöver nya eller uppdaterade resurser. Mer information finns i Åtgärda resurser.
Skapa en hanterad identitet kontrolleras automatiskt eftersom den här principdefinitionen använder ändringseffekten. Typ av hanterad identitet är inställd på Systemtilldelad. Behörigheter anges till Deltagare automatiskt baserat på principdefinitionen. Mer information finns i Hanterade identiteter och hur åtkomstkontroll för reparation fungerar.
Välj fliken Icke-efterlevnadsmeddelanden överst i guiden.
Ange icke-efterlevnadsmeddelandet till Den här resursen har inte den tagg som krävs. Det här anpassade meddelandet visas när en resurs nekas eller för icke-kompatibla resurser under den regelbundna utvärderingen.
Välj fliken Granska + skapa överst i guiden.
Granska dina val och välj sedan Skapa längst ned på sidan.
Implementera en ny anpassad princip
Nu när du har tilldelat en inbyggd principdefinition kan du göra mer med Azure Policy. Skapa sedan en ny anpassad princip för att spara kostnader genom att verifiera att virtuella datorer som skapats i din miljö inte kan finnas i G-serien. På så sätt nekas begäran varje gång en användare i organisationen försöker skapa en virtuell dator i G-serien.
Välj Definitioner under Redigering till vänster på sidan Azure Policy.
Välj + Principdefinition överst på sidan. Den här knappen öppnar sidan Principdefinition.
Ange följande information:
Hanteringsgruppen eller prenumerationen där principdefinitionen sparas. Välj Definitionens plats med ellipsen.
Kommentar
Om du tänker tillämpa denna principdefinition på flera prenumerationer, måste platsen vara en hanteringsgrupp som innehåller de prenumerationer som du tilldelar principen. Detsamma gäller för en initiativdefinition.
Namnet på principdefinitionen – Kräv vm-SKU:er som inte finns i G-serien
Beskrivningen av vad principdefinitionen är avsedd att göra – Den här principdefinitionen framtvingar att alla virtuella datorer som skapats i det här omfånget har andra SKU:er än G-serien för att minska kostnaderna.
Välj mellan befintliga alternativ (som Compute), eller skapa en ny kategori för den här principdefinitionen.
Kopiera följande JSON-kod och uppdatera den sedan efter dina behov med:
- Principparametrarna.
- Principregler/villkor, i det här fallet – VM SKU-storlek lika med G-serien
- Principeffekten, i det här fallet – Neka.
Så här ska din JSON se ut. Klistra in den reviderade koden i Azure-portalen.
{ "policyRule": { "if": { "allOf": [{ "field": "type", "equals": "Microsoft.Compute/virtualMachines" }, { "field": "Microsoft.Compute/virtualMachines/sku.name", "like": "Standard_G*" } ] }, "then": { "effect": "deny" } } }
Fältegenskapen i principregeln måste vara ett värde som stöds. En fullständig lista med värden finns i fälten för principdefinitionsstruktur. Ett exempel på ett alias kan vara
"Microsoft.Compute/VirtualMachines/Size"
.Mer information om Azure Policy-exempel finns i Azure Policy-exempel.
Välj Spara.
Skapa en principdefinition med REST API
Du kan skapa en princip med REST API för Azure Policy Definitions. Med REST API kan du skapa och ta bort principdefinitioner och få information om befintliga definitioner. Om du vill skapa en principdefinition använder du följande exempel:
PUT https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.authorization/policydefinitions/{policyDefinitionName}?api-version={api-version}
Inkludera en begärantext som liknar följande exempel:
{
"properties": {
"parameters": {
"allowedLocations": {
"type": "array",
"metadata": {
"description": "The list of locations that can be specified when deploying resources",
"strongType": "location",
"displayName": "Allowed locations"
}
}
},
"displayName": "Allowed locations",
"description": "This policy enables you to restrict the locations your organization can specify when deploying resources.",
"policyRule": {
"if": {
"not": {
"field": "location",
"in": "[parameters('allowedLocations')]"
}
},
"then": {
"effect": "deny"
}
}
}
}
Skapa en principdefinition med PowerShell
Innan du fortsätter med PowerShell-exemplet kontrollerar du att du har installerat den senaste versionen av Azure PowerShell Az-modulen.
Du kan skapa en principdefinition med cmdleten New-AzPolicyDefinition
.
Om du vill skapa en principdefinition från en fil skickar du sökvägen till filen. Använd följande exempel för en extern fil:
$definition = New-AzPolicyDefinition `
-Name 'denyCoolTiering' `
-DisplayName 'Deny cool access tiering for storage' `
-Policy 'https://raw.githubusercontent.com/Azure/azure-policy-samples/master/samples/Storage/storage-account-access-tier/azurepolicy.rules.json'
Använd följande exempel för en lokal fil:
$definition = New-AzPolicyDefinition `
-Name 'denyCoolTiering' `
-Description 'Deny cool access tiering for storage' `
-Policy 'c:\policies\coolAccessTier.json'
Om du vill skapa en principdefinition med en infogad regel använder du följande exempel:
$definition = New-AzPolicyDefinition -Name 'denyCoolTiering' -Description 'Deny cool access tiering for storage' -Policy '{
"if": {
"allOf": [{
"field": "type",
"equals": "Microsoft.Storage/storageAccounts"
},
{
"field": "kind",
"equals": "BlobStorage"
},
{
"field": "Microsoft.Storage/storageAccounts/accessTier",
"equals": "cool"
}
]
},
"then": {
"effect": "deny"
}
}'
Utdata lagras i ett $definition
-objekt som används under principtilldelningen. I följande exempel skapas en principdefinition som innehåller parametrarna:
$policy = '{
"if": {
"allOf": [{
"field": "type",
"equals": "Microsoft.Storage/storageAccounts"
},
{
"not": {
"field": "location",
"in": "[parameters(''allowedLocations'')]"
}
}
]
},
"then": {
"effect": "Deny"
}
}'
$parameters = '{
"allowedLocations": {
"type": "array",
"metadata": {
"description": "The list of locations that can be specified when deploying storage accounts.",
"strongType": "location",
"displayName": "Allowed locations"
}
}
}'
$definition = New-AzPolicyDefinition -Name 'storageLocations' -Description 'Policy to specify locations for storage accounts.' -Policy $policy -Parameter $parameters
Visa principdefinitioner med PowerShell
Om du vill visa alla principdefinitioner i din prenumeration använder du följande kommando:
Get-AzPolicyDefinition
Den returnerar alla tillgängliga principdefinitioner, inklusive inbyggda principer. Varje princip returneras i följande format:
Name : e56962a6-4747-49cd-b67b-bf8b01975c4c
ResourceId : /providers/Microsoft.Authorization/policyDefinitions/e56962a6-4747-49cd-b67b-bf8b01975c4c
ResourceName : e56962a6-4747-49cd-b67b-bf8b01975c4c
ResourceType : Microsoft.Authorization/policyDefinitions
Properties : @{displayName=Allowed locations; policyType=BuiltIn; description=This policy enables you to
restrict the locations your organization can specify when deploying resources. Use to enforce
your geo-compliance requirements.; parameters=; policyRule=}
PolicyDefinitionId : /providers/Microsoft.Authorization/policyDefinitions/e56962a6-4747-49cd-b67b-bf8b01975c4c
Skapa en principdefinition med Azure CLI
Du kan skapa en principdefinition med hjälp av Azure CLI med az policy definition
kommandot . Om du vill skapa en principdefinition med en infogad regel använder du följande exempel:
az policy definition create --name 'denyCoolTiering' --description 'Deny cool access tiering for storage' --rules '{
"if": {
"allOf": [{
"field": "type",
"equals": "Microsoft.Storage/storageAccounts"
},
{
"field": "kind",
"equals": "BlobStorage"
},
{
"field": "Microsoft.Storage/storageAccounts/accessTier",
"equals": "cool"
}
]
},
"then": {
"effect": "deny"
}
}'
Visa principdefinitioner med Azure CLI
Om du vill visa alla principdefinitioner i din prenumeration använder du följande kommando:
az policy definition list
Den returnerar alla tillgängliga principdefinitioner, inklusive inbyggda principer. Varje princip returneras i följande format:
{
"description": "This policy enables you to restrict the locations your organization can specify when deploying resources. Use to enforce your geo-compliance requirements.",
"displayName": "Allowed locations",
"version": "1.0.0"
"id": "/providers/Microsoft.Authorization/policyDefinitions/e56962a6-4747-49cd-b67b-bf8b01975c4c",
"name": "e56962a6-4747-49cd-b67b-bf8b01975c4c",
"policyRule": {
"if": {
"not": {
"field": "location",
"in": "[parameters('listOfAllowedLocations')]"
}
},
"then": {
"effect": "Deny"
}
},
"policyType": "BuiltIn"
}
Skapa och tilldela en initiativdefinition
Med en initiativdefinition kan du gruppera flera principdefinitioner för att uppnå ett övergripande mål. Ett initiativ utvärderar resurser inom omfånget för tilldelningen för efterlevnad med tillhörande principer. Se Översikt över Azure Policy för mer information om initiativdefinitioner.
Skapa en initiativdefinition
Välj Definitioner under Redigering till vänster på sidan Azure Policy.
Välj + Initiativdefinition överst på sidan för att öppna guiden Initiativdefinition .
Använd ellipsen Initiativplats för att välja en hanteringsgrupp eller prenumeration för att lagra definitionen. Om föregående sida begränsades till en enda hanteringsgrupp eller prenumeration fylls initiativplatsen automatiskt i.
Ange Namn och Beskrivning för initiativet.
Det här exemplet kontrollerar att resurser efterlever principdefinitioner om säkerhet. Namnge initiativet Bli säker och ange beskrivningen som: Det här initiativet har skapats för att hantera principdefinitioner associerade med att säkra resurser.
Välj bland befintliga alternativ eller skapa en ny kategori i Kategori.
Ange en version för initiativet, till exempel 1.0.
Kommentar
Versionsvärdet är strikt metadata och används inte för uppdateringar eller processer av Azure Policy-tjänsten.
Välj Nästa längst ned på sidan eller fliken Principer överst i guiden.
Välj knappen Lägg till principdefinitioner och bläddra igenom listan. Välj de principdefinitioner som du vill lägga till i det här initiativet. För initiativet Get Secure lägger du till följande inbyggda principdefinitioner genom att markera kryssrutan bredvid principdefinitionen:
- Tillåtna platser
- Slutpunktsskydd ska installeras på datorer
- Virtuella datorer som inte är anslutna till Internet bör skyddas med nätverkssäkerhetsgrupper
- Azure Backup ska vara aktiverat för virtuella datorer
- Diskkryptering bör tillämpas på virtuella datorer
- Lägg till eller ersätt en tagg för resurser (lägg till den här principdefinitionen två gånger)
När du har valt varje principdefinition i listan väljer du Lägg till längst ned i listan. Eftersom den läggs till två gånger får lägg till eller ersätt en tagg för resursprincipdefinitioner olika referens-ID.
Kommentar
De valda principdefinitionerna kan läggas till i grupper genom att välja en eller flera tillagda definitioner och välja Lägg till valda principer i en grupp. Gruppen måste finnas först och kan skapas på fliken Grupper i guiden.
Välj Nästa längst ned på sidan eller fliken Grupper överst i guiden. Nya grupper kan läggas till på den här fliken. I den här självstudien lägger vi inte till några grupper.
Välj Nästa längst ned på sidan eller fliken Initiativparametrar överst i guiden. Om vi vill att en parameter ska finnas på initiativet för att skicka till en eller flera inkluderade principdefinitioner definieras parametern här och används sedan på fliken Principparametrar . I den här självstudien lägger vi inte till några initiativparametrar.
Kommentar
När initiativparametrarna har sparats i en initiativdefinition kan de inte tas bort från initiativet. Om en initiativparameter inte längre behövs tar du bort den från användning av principdefinitionsparametrar.
Välj Nästa längst ned på sidan eller fliken Principparametrar överst i guiden.
Principdefinitioner som läggs till i initiativet med parametrar visas i ett rutnät. Värdetypen kan vara "Standardvärde", "Ange värde" eller "Använd initiativparameter". Om "Ange värde" har valts anges det relaterade värdet under Värde. Om parametern i principdefinitionen har en lista över tillåtna värden är postrutan en listruteväljare. Om "Använd initiativparameter" har valts tillhandahålls en listruta med namnen på initiativparametrar som skapats på fliken Initiativparametrar .
Kommentar
När det gäller vissa parametrar av typen
strongType
går det inte att automatiskt fastställa listan med värden. I de här fallen visas en ellips till höger om parameterraden. Om du väljer den öppnas sidan Parameteromfång (<parameternamn>)." På den här sidan väljer du den prenumeration som ska användas för att tillhandahålla värdealternativen. Det här parameterområdet används bara när initiativdefinitionen skapas. Den påverkar inte principutvärderingen eller initiativets omfattning efter tilldelningen.Ange värdetypen "Tillåtna platser" till "Ange värde" och välj "USA, östra 2" i listrutan. För de två instanserna av parametrarna Lägg till eller ersätt en tagg för resursprincipdefinitioner anger du parametrarna Taggnamn till "Env" och "CostCenter" och taggvärdesparametrarna till "Test" och "Lab" enligt nedan. Lämna de andra som "Standardvärde". Med samma definition två gånger i initiativet men med olika parametrar lägger den här konfigurationen till eller ersätter en "Env"-tagg med värdet "Test" och en CostCenter-tagg med värdet "Lab" för resurser i tilldelningens omfång.
Välj Granska + skapa längst ned på sidan eller överst i guiden.
Granska inställningarna och välj Skapa.
Skapa en principinitiativdefinition med Azure CLI
Du kan skapa en principinitiativdefinition med hjälp av Azure CLI med az policy set-definition
kommandot . Om du vill skapa en principinitiativdefinition med en befintlig principdefinition använder du följande exempel:
az policy set-definition create -n readOnlyStorage --definitions '[
{
"policyDefinitionId": "/subscriptions/mySubId/providers/Microsoft.Authorization/policyDefinitions/storagePolicy",
"parameters": { "storageSku": { "value": "[parameters(\"requiredSku\")]" } }
}
]' \
--params '{ "requiredSku": { "type": "String" } }'
Skapa en principinitiativdefinition med Azure PowerShell
Du kan skapa en principinitiativdefinition med hjälp av Azure PowerShell med cmdleten New-AzPolicySetDefinition
. Om du vill skapa en principinitiativdefinition med en befintlig principdefinition använder du följande principinitiativdefinitionsfil som VMPolicySet.json
:
[
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/2a0e14a6-b0a6-4fab-991a-187a4f81c498",
"parameters": {
"tagName": {
"value": "Business Unit"
},
"tagValue": {
"value": "Finance"
}
}
},
{
"policyDefinitionId": "/providers/Microsoft.Authorization/policyDefinitions/464dbb85-3d5f-4a1d-bb09-95a9b5dd19cf"
}
]
New-AzPolicySetDefinition -Name 'VMPolicySetDefinition' -Metadata '{"category":"Virtual Machine"}' -PolicyDefinition C:\VMPolicySet.json
Tilldela en initiativdefinition
Välj Definitioner under Redigering till vänster på sidan Azure Policy.
Leta upp initiativdefinitionen Get Secure som du skapade tidigare och markera den. Välj Tilldela överst på sidan för att öppna sidan Bli säker: tilldela initiativ.
Du kan också välja och hålla kvar (eller högerklicka) på den markerade raden eller välja ellipsen i slutet av raden för en snabbmeny. Välj sedan Tilldela.
Fyll i sidan Get Secure: Assign Initiative genom att ange följande exempelinformation. Du kan använda din egen information.
- Omfång: Den hanteringsgrupp eller prenumeration som du sparade initiativet för att bli standard. Du kan ändra omfånget för att tilldela initiativet till en prenumeration eller resursgrupp på den sparade platsen.
- Undantag: Konfigurera några resurser inom omfånget för att förhindra att initiativtilldelningen tillämpas på dem.
- Initiativdefinition och tilldelningsnamn: Get Secure (förifylld med namnet på initiativet som tilldelats).
- Beskrivning: Initiativtilldelningen är skräddarsydd för att tillämpa den här gruppen med principdefinitioner.
- Principframtvingande: Lämna som standard Aktiverad.
- Tilldelad av: anges automatiskt baserat på vem som är inloggad. Det här fältet är valfritt, så du kan ange anpassade värden.
Välj fliken Parametrar överst i guiden. Om du konfigurerade en initiativparameter i föregående steg anger du ett värde här.
Välj fliken Reparation överst i guiden. Lämna Skapa en hanterad identitet avmarkerat. Den här rutan måste markeras när principen eller initiativet som tilldelas innehåller en princip med deployIfNotExists eller ändra effekter. Eftersom den princip som används för den här självstudien inte gör det kan du lämna den tom. Mer information finns i Hanterade identiteter och hur åtkomstkontroll för reparation fungerar.
Välj fliken Granska + skapa överst i guiden.
Granska dina val och välj sedan Skapa längst ned på sidan.
Kontrollera inledande efterlevnad
Välj Efterlevnad till vänster på Azure Policy-sidan.
Leta upp initiativet Hämta säker. Det är sannolikt fortfarande i EfterlevnadstillståndetInte startat. Välj initiativet för att få fullständig information om tilldelningen.
När initiativtilldelningen har slutförts, uppdateras sidan för efterlevnad med den EfterlevnadstillståndetEfterlever.
Om du väljer valfri princip på sidan för initiativefterlevnad öppnas sidan med efterlevnadsinformation för principen. Den här sidan ger information på resursnivån för efterlevnad.
Ta bort en icke-kompatibel eller nekad resurs från omfånget med undantag
När du har tilldelat ett principinitiativ för att kräva en specifik plats nekas alla resurser som skapats på en annan plats. I det här avsnittet går du igenom hur du löser en nekad begäran om att skapa en resurs genom att skapa ett undantag för en enskild resursgrupp. Undantaget förhindrar att principen (eller initiativet) tillämpas på resursgruppen. I följande exempel tillåts alla platser i den undantagna resursgruppen. Ett undantag kan gälla för en prenumeration, en resursgrupp eller en enskild resurs.
Kommentar
Ett principundantag kan också användas för att hoppa över utvärderingen av en resurs. Mer information finns i Omfång i Azure Policy.
Distributioner som förhindras av en tilldelad princip eller ett initiativ kan visas på den resursgrupp som distributionen riktar in sig på: Välj Distributioner till vänster på sidan och välj sedan Distributionsnamn för den misslyckade distributionen. Resursen som nekades visas med statusen Förbjuden. Välj Misslyckades för att fastställa den princip eller det initiativ och den tilldelning som nekade resursen . Klicka här om du vill ha mer information –> på sidan Distributionsöversikt. Ett fönster öppnas till höger om sidan med felinformationen. Under Felinformation finns GUID för de relaterade principobjekten.
På sidan Azure Policy: Välj Efterlevnad till vänster på sidan och välj initiativet Hämta säker princip. På den här sidan ökar antalet neka för blockerade resurser. På fliken Händelser finns information om vem som försökte skapa eller distribuera resursen som nekades av principdefinitionen.
I det här exemplet utförde Trent Baker, en av Contosos seniora virtualiseringsspecialister, obligatoriskt arbete. Vi måste ge Trent ett utrymme för ett undantag. Skapa en ny resursgrupp, LocationsExcluded, och bevilja den sedan ett undantag till den här principtilldelningen.
Uppdatera tilldelning med undantag
Välj Tilldelningar under Redigering till vänster om Azure Policy-sidan.
Bläddra igenom alla principtilldelningar och öppna tilldelningen Hämta säker princip.
Ange Exkludering genom att välja ellipsen och välja den resursgrupp som ska undantas, LocationsExcluded i det här exemplet. Välj Lägg till i markerat omfång och välj sedan Spara.
Kommentar
Beroende på principdefinitionen och dess effekt kan exkludering även beviljas till specifika resurser i en resursgrupp inom tilldelningens omfång. Eftersom en Neka-effekt användes i den här självstudien skulle det inte vara meningsfullt att ange undantaget för en specifik resurs som redan finns.
Välj Granska + spara och välj sedan Spara.
I det här avsnittet löste du den nekade begäran genom att skapa ett undantag på en enskild resursgrupp.
Rensa resurser
Om du är klar med att arbeta med resurser från den här självstudien använder du följande steg för att ta bort någon av de principtilldelningar eller definitioner som skapades ovan:
Välj Definitioner (eller Tilldelningar om du ska ta bort en tilldelning) under Redigering till vänster på sidan Azure Policy.
Sök efter den nya initiativ- eller principdefinition (eller tilldelning) som du vill ta bort.
Högerklicka på raden eller välj ellipserna i slutet av definitionen (eller tilldelningen) och välj Ta bort definition (eller Ta bort tilldelning).
Granskning
I den här självstudien har du genomfört följande uppgifter:
- Tilldelat en princip för att genomdriva ett villkor för resurser som du skapar i framtiden
- Skapat och tilldelat en initiativdefinition för att spåra efterlevnad för flera resurser
- Löst en icke-kompatibel eller nekad resurs
- Implementerat en ny princip i en organisation
Nästa steg
Mer information om principdefinitionernas strukturer finns i den här artikeln: