id: os_root_disable
title: Disable Root Login
discussion: |
  To assure individual accountability and prevent unauthorized access, logging in as root at the login window _MUST_ be disabled.

  The macOS system _MUST_ require individuals to be authenticated with an individual authenticator prior to using a group authenticator, and administrator users _MUST_ never log in directly as root.
references:
  nist:
    cce:
      macos_27:
        - CCE-XXXXX-X
      macos_26:
        - CCE-95282-0
      macos_15:
        - CCE-94279-7
      macos_14:
        - CCE-92875-4
    800-53r5:
      - IA-2
      - IA-2(5)
    800-171r3:
      - 03.05.01
  disa:
    cci:
      - CCI-000764
      - CCI-000770
      - CCI-001813
      - CCI-004045
    srg:
      - SRG-OS-000364-GPOS-00151
      - SRG-OS-000109-GPOS-00056
      - SRG-OS-000104-GPOS-00051
    disa_stig:
      macos_26:
        - APPL-26-000100
      macos_15:
        - APPL-15-000100
      macos_14:
        - APPL-14-000100
    cmmc:
      - IA.L1-3.5.1
      - IA.L1-3.5.2
  bzk:
    bio:
      - 5.16.02
      - 5.16
  cis:
    benchmark:
      macos_26:
        - 5.6 (level 1)
      macos_15:
        - 5.6 (level 1)
      macos_14:
        - 5.6 (level 1)
    controls_v8:
      - 5.4
platforms:
  macOS:
    '27.0': {}
    '26.0':
      benchmarks:
        - name: cis_lvl1
        - name: cis_lvl2
        - name: disa_stig
          severity: medium
        - name: nlmapgov_plus
    '15.0':
      benchmarks:
        - name: cis_lvl1
        - name: cis_lvl2
        - name: disa_stig
          severity: medium
        - name: nlmapgov_plus
    enforcement_info:
      check:
        shell: /usr/bin/dscl '/Local/Default' read '/Users/root' AuthenticationAuthority 2>/dev/null | /usr/bin/grep -c 'AuthenticationAuthority'
        result:
          integer: 0
      fix:
        shell: |-
          /usr/bin/fdesetup remove -user root
          /usr/bin/dscl '/Local/Default' delete '/Users/root' AuthenticationAuthority
tags:
  - 800-53r5_low
  - 800-53r5_moderate
  - 800-53r5_high
  - 800-171
  - cisv8
  - cnssi-1253_low
  - cnssi-1253_high
  - cmmc_lvl2
  - cmmc_lvl1
  - cnssi-1253_moderate
