Samples/PasswordPolicy.sample.json

{
    "domain": "corp.contoso.com",
    "domainPolicy": {
        "minPasswordLength": 7, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
        "minPasswordAgeDays": 1, "maxPasswordAgeDays": 42,
        "lockoutThreshold": 0, "lockoutDurationMinutes": 30, "lockoutObservationWindowMinutes": 30
    },
    "accounts": [
        { "name": "Domain Users", "kind": "Group", "scope": "Global" },
        { "name": "Tier 0 Admins", "samAccountName": "T0-Admins", "kind": "Group", "scope": "Global", "container": "OU=Groups,OU=Tier 0" },
        { "name": "Tier 1 Admins", "samAccountName": "T1-Admins", "kind": "Group", "scope": "Global", "container": "OU=Groups,OU=Tier 1", "memberOf": [ "IT-Staff" ] },
        { "name": "Tier 2 Admins", "samAccountName": "T2-Admins", "kind": "Group", "scope": "Global", "container": "OU=Groups,OU=Tier 2", "memberOf": [ "IT-Staff" ] },
        { "name": "IT Staff", "samAccountName": "IT-Staff", "kind": "Group", "scope": "Global", "container": "OU=Groups" },
        { "name": "Service Accounts", "samAccountName": "SVC-Accounts", "kind": "Group", "scope": "Global", "container": "OU=Groups" },
        { "name": "VPN Users", "samAccountName": "VPN-Users", "kind": "Group", "scope": "DomainLocal", "container": "OU=Groups" },
        { "name": "Alice Martin", "samAccountName": "amartin", "kind": "User", "container": "OU=Accounts,OU=Tier 0", "memberOf": [ "T0-Admins" ], "primaryGroup": "Domain Users" },
        { "name": "Bob Durand", "samAccountName": "bdurand", "kind": "User", "container": "OU=Accounts,OU=Tier 1", "memberOf": [ "T1-Admins", "VPN-Users" ], "primaryGroup": "Domain Users" },
        { "name": "Claire Petit", "samAccountName": "cpetit", "kind": "User", "container": "OU=Accounts,OU=Tier 2", "memberOf": [ "T2-Admins" ], "primaryGroup": "Domain Users" },
        { "name": "Jean Dupont", "samAccountName": "jdupont", "kind": "User", "container": "OU=Users", "memberOf": [ "VPN-Users" ], "primaryGroup": "Domain Users" },
        { "name": "svc-backup", "kind": "User", "container": "OU=Service Accounts", "memberOf": [ "SVC-Accounts" ], "primaryGroup": "Domain Users" },
        { "name": "svc-sql", "kind": "User", "container": "OU=Service Accounts", "memberOf": [ "SVC-Accounts" ], "primaryGroup": "Domain Users" }
    ],
    "policies": [
        {
            "name": "PSO - Tier 0 Admins", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b01", "precedence": 10,
            "minPasswordLength": 20, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 1, "maxPasswordAgeDays": 180,
            "lockoutThreshold": 5, "lockoutDurationMinutes": 0, "lockoutObservationWindowMinutes": 30,
            "description": "Administrators of the domain controllers (Tier 0)", "protectedFromAccidentalDeletion": true,
            "appliesTo": [ "T0-Admins" ]
        },
        {
            "name": "PSO - Tier 1 Admins", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b02", "precedence": 20,
            "minPasswordLength": 16, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 1, "maxPasswordAgeDays": 180,
            "lockoutThreshold": 10, "lockoutDurationMinutes": 30, "lockoutObservationWindowMinutes": 30,
            "description": "Administrators of the servers (Tier 1)", "protectedFromAccidentalDeletion": true,
            "appliesTo": [ "T1-Admins" ]
        },
        {
            "name": "PSO - Tier 2 Admins", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b03", "precedence": 30,
            "minPasswordLength": 14, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 1, "maxPasswordAgeDays": 90,
            "lockoutThreshold": 10, "lockoutDurationMinutes": 30, "lockoutObservationWindowMinutes": 30,
            "description": "Administrators of the workstations (Tier 2)",
            "appliesTo": [ "T2-Admins" ]
        },
        {
            "name": "PSO - Service Accounts", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b04", "precedence": 40,
            "minPasswordLength": 30, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 0, "maxPasswordAgeDays": 0,
            "lockoutThreshold": 0, "lockoutDurationMinutes": 30, "lockoutObservationWindowMinutes": 30,
            "description": "Service accounts: long passwords that do not expire, never locked out",
            "appliesTo": [ "SVC-Accounts" ]
        },
        {
            "name": "PSO - IT Staff", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b05", "precedence": 50,
            "minPasswordLength": 12, "passwordHistoryCount": 12, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 1, "maxPasswordAgeDays": 90,
            "lockoutThreshold": 10, "lockoutDurationMinutes": 15, "lockoutObservationWindowMinutes": 15,
            "description": "Everyone of the IT department",
            "appliesTo": [ "IT-Staff" ]
        },
        {
            "name": "PSO - VPN Users", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b06", "precedence": 5,
            "minPasswordLength": 15, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 1, "maxPasswordAgeDays": 60,
            "lockoutThreshold": 5, "lockoutDurationMinutes": 30, "lockoutObservationWindowMinutes": 30,
            "description": "Applied to a domain local group: it applies to nobody",
            "appliesTo": [ "VPN-Users" ]
        },
        {
            "name": "PSO - Backup account", "id": "0a6f3c51-7d2e-4b8a-9c41-1f0e2d3c4b07", "precedence": 60,
            "minPasswordLength": 24, "passwordHistoryCount": 24, "complexityEnabled": true, "reversibleEncryptionEnabled": false,
            "minPasswordAgeDays": 0, "maxPasswordAgeDays": 365,
            "lockoutThreshold": 0, "lockoutDurationMinutes": 30, "lockoutObservationWindowMinutes": 30,
            "description": "The backup account changes its password every year",
            "appliesTo": [ "svc-backup" ]
        }
    ]
}