<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Project xmlns="http://schemas.microsoft.com/project">
  <Name>non-person-identity.xml</Name>
  <Title>Non-Person Identity Modernization: Service Accounts, Workload Identities and AI Agents</Title>
  <ScheduleFromStart>1</ScheduleFromStart>
  <StartDate>2027-01-04T08:00:00</StartDate>
  <DefaultStartTime>08:00:00</DefaultStartTime>
  <DefaultFinishTime>17:00:00</DefaultFinishTime>
  <MinutesPerDay>480</MinutesPerDay>
  <MinutesPerWeek>2400</MinutesPerWeek>
  <DaysPerMonth>20</DaysPerMonth>
  <DurationFormat>7</DurationFormat>
  <CalendarUID>1</CalendarUID>
  <Calendars>
    <Calendar>
      <UID>1</UID>
      <Name>Standard</Name>
      <IsBaseCalendar>1</IsBaseCalendar>
      <BaseCalendarUID>-1</BaseCalendarUID>
      <WeekDays>
        <WeekDay>
          <DayType>1</DayType>
          <DayWorking>0</DayWorking>
        </WeekDay>
        <WeekDay>
          <DayType>2</DayType>
          <DayWorking>1</DayWorking>
          <WorkingTimes>
            <WorkingTime><FromTime>08:00:00</FromTime><ToTime>12:00:00</ToTime></WorkingTime>
            <WorkingTime><FromTime>13:00:00</FromTime><ToTime>17:00:00</ToTime></WorkingTime>
          </WorkingTimes>
        </WeekDay>
        <WeekDay>
          <DayType>3</DayType>
          <DayWorking>1</DayWorking>
          <WorkingTimes>
            <WorkingTime><FromTime>08:00:00</FromTime><ToTime>12:00:00</ToTime></WorkingTime>
            <WorkingTime><FromTime>13:00:00</FromTime><ToTime>17:00:00</ToTime></WorkingTime>
          </WorkingTimes>
        </WeekDay>
        <WeekDay>
          <DayType>4</DayType>
          <DayWorking>1</DayWorking>
          <WorkingTimes>
            <WorkingTime><FromTime>08:00:00</FromTime><ToTime>12:00:00</ToTime></WorkingTime>
            <WorkingTime><FromTime>13:00:00</FromTime><ToTime>17:00:00</ToTime></WorkingTime>
          </WorkingTimes>
        </WeekDay>
        <WeekDay>
          <DayType>5</DayType>
          <DayWorking>1</DayWorking>
          <WorkingTimes>
            <WorkingTime><FromTime>08:00:00</FromTime><ToTime>12:00:00</ToTime></WorkingTime>
            <WorkingTime><FromTime>13:00:00</FromTime><ToTime>17:00:00</ToTime></WorkingTime>
          </WorkingTimes>
        </WeekDay>
        <WeekDay>
          <DayType>6</DayType>
          <DayWorking>1</DayWorking>
          <WorkingTimes>
            <WorkingTime><FromTime>08:00:00</FromTime><ToTime>12:00:00</ToTime></WorkingTime>
            <WorkingTime><FromTime>13:00:00</FromTime><ToTime>17:00:00</ToTime></WorkingTime>
          </WorkingTimes>
        </WeekDay>
        <WeekDay>
          <DayType>7</DayType>
          <DayWorking>0</DayWorking>
        </WeekDay>
      </WeekDays>
    </Calendar>
  </Calendars>
  <Tasks>
    <Task>
      <UID>1</UID>
      <ID>1</ID>
      <Name>Phase 0 — Inventory</Name>
      <OutlineNumber>1</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-01-04T08:00:00</Start>
      <Finish>2027-01-29T17:00:00</Finish>
    </Task>
    <Task>
      <UID>2</UID>
      <ID>2</ID>
      <Name>NP0.1 AD service accounts discovered, read-only: traditional accounts, MSAs, gMSAs and dMSAs, classified by type and risk with a suggested target</Name>
      <OutlineNumber>1.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-04T08:00:00</Start>
      <Finish>2027-01-15T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b02-identity/09-building-the-entra-target.md#discovering-service-accounts</Notes>
    </Task>
    <Task>
      <UID>3</UID>
      <ID>3</ID>
      <Name>X-G0 Program G0 — Ready to Plan: the read-only assessment committed</Name>
      <OutlineNumber>1.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-29T17:00:00</Start>
      <Finish>2027-01-29T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Steward (backup: executive sponsor; program)</Contact>
      <Notes>Owner or approver: Steward (backup: executive sponsor; program)
If decided late: The program's assessment goes to G0 without the service account picture, and Phase 1 is sized without it
Source: program-master-schedule.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-01-29T17:00:00</ConstraintDate>
      <PredecessorLink>
        <PredecessorUID>2</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>4</UID>
      <ID>4</ID>
      <Name>X-A03 App registrations, owners, credentials and granted permissions inventoried (Privileged Access plan, A0.3)</Name>
      <OutlineNumber>1.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-13T17:00:00</Start>
      <Finish>2027-01-13T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Identity engineering (Privileged Access &amp; Administrative Identity plan)</Contact>
      <Notes>Owner or approver: Identity engineering (Privileged Access &amp; Administrative Identity plan)
If decided late: The Entra side of the register has no app registration inventory to start from
Source: privileged-access.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-01-13T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>5</UID>
      <ID>5</ID>
      <Name>NP0.2 Entra workload identities added to that inventory: managed identities, federated credentials, consent grants; ownerless and secret-holding apps flagged</Name>
      <OutlineNumber>1.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-14T08:00:00</Start>
      <Finish>2027-01-20T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b04-access/05-applications-and-workload-identities.md#a-read-only-inventory-to-start-from</Notes>
      <PredecessorLink>
        <PredecessorUID>4</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>6</UID>
      <ID>6</ID>
      <Name>NP0.3 AI seed list: the current AI use-case inventory vintage loaded; agentic, purchased and no-ATO entries matched to agent identities and service principals</Name>
      <OutlineNumber>1.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-04T08:00:00</Start>
      <Finish>2027-01-15T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering, with the Chief AI Officer's staff</Contact>
      <Notes>Owner or approver: Identity engineering, with the Chief AI Officer's staff
Source: ../books/b17-ai-identity/03-the-inventory-as-an-identity-source.md#using-the-inventory-as-the-seed-list</Notes>
    </Task>
    <Task>
      <UID>7</UID>
      <ID>7</ID>
      <Name>NP0.4 SQL Server engine, login and LDAP-bind accounts tagged and handed to the Data Platform plan</Name>
      <OutlineNumber>1.6</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-18T08:00:00</Start>
      <Finish>2027-01-20T17:00:00</Finish>
      <Duration>PT24H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b06-data-platform/09-what-arc-provides-to-sql-server.md#the-managed-identity-and-the-service-account</Notes>
      <PredecessorLink>
        <PredecessorUID>2</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>8</UID>
      <ID>8</ID>
      <Name>NP0.5 One non-person identity register: type, host, workload location, risk and candidate target for every identity</Name>
      <OutlineNumber>1.7</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-21T08:00:00</Start>
      <Finish>2027-01-27T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/guides/attribute-driven-migration.md#non-person-identity-track</Notes>
      <PredecessorLink>
        <PredecessorUID>2</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>5</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>6</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>7</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>9</UID>
      <ID>9</ID>
      <Name>D-NP1 Source of record for non-person identities</Name>
      <OutlineNumber>1.8</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-15T17:00:00</Start>
      <Finish>2027-01-15T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CIO</Contact>
      <Notes>Owner or approver: CIO
Options: The owning workload's record (the system inventory or CMDB entry and the application registration) and, for AI, the AI use-case inventory, with the register keyed to them; a separate identity register kept by the identity team
If decided late: The register has nothing to reconcile against, and owners and lifecycle have nothing to hang from
Source: ../books/guides/attribute-driven-migration.md#non-person-identity-track</Notes>
      <PredecessorLink>
        <PredecessorUID>2</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>10</UID>
      <ID>10</ID>
      <Name>NPG0 Gate 0 — Non-person identities inventoried</Name>
      <OutlineNumber>1.9</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-27T17:00:00</Start>
      <Finish>2027-01-27T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>ISSO</Contact>
      <Notes>Owner or approver: ISSO
Criteria: Every AD service account, MSA, gMSA and dMSA, every app registration, service principal and managed identity, and every AI use case in the current vintage in one register with type, risk and candidate target; HIGH-risk accounts listed; stale leads confirmed against sign-in logs, not retired on a guess; SQL Server accounts handed to the Data Platform plan
Source: ../books/b02-identity/10-migrating-and-governing.md#phase-4-service-account-modernization</Notes>
      <PredecessorLink>
        <PredecessorUID>8</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>9</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>11</UID>
      <ID>11</ID>
      <Name>Phase 1 — Ownership</Name>
      <OutlineNumber>2</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-01-28T08:00:00</Start>
      <Finish>2027-03-10T17:00:00</Finish>
    </Task>
    <Task>
      <UID>12</UID>
      <ID>12</ID>
      <Name>NP1.1 An application owner found for every service account; two human owners on every app registration and service principal outside the privileged sweep (Privileged Access plan, A3.4); serviceManagementReference set</Name>
      <OutlineNumber>2.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-28T08:00:00</Start>
      <Finish>2027-03-03T17:00:00</Finish>
      <Duration>PT200H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Application owners</Contact>
      <Notes>Owner or approver: Application owners
Source: ../books/b04-access/05-applications-and-workload-identities.md#ownership</Notes>
      <PredecessorLink>
        <PredecessorUID>10</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>13</UID>
      <ID>13</ID>
      <Name>NP1.2 AI accountability: a federal sponsor mastered in HR, a small sponsoring group, a technical owner who isn't the sponsor, and a matching inventory record</Name>
      <OutlineNumber>2.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-28T08:00:00</Start>
      <Finish>2027-02-17T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Sponsoring offices, with the identity governance officer</Contact>
      <Notes>Owner or approver: Sponsoring offices, with the identity governance officer
Source: ../books/b17-ai-identity/05-owners-sponsors-and-lifecycle.md#the-programs-rule-two-named-humans-and-a-record</Notes>
      <PredecessorLink>
        <PredecessorUID>10</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>14</UID>
      <ID>14</ID>
      <Name>D-NP2 Orphan rule for identities nobody will own</Name>
      <OutlineNumber>2.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-27T17:00:00</Start>
      <Finish>2027-01-27T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Options: Disable once the identity governance officer confirms the finding, then 30 days for the office to name an owner or retire it (a non-person identity rule, not Book 04's, which gives the office 30 days and then suspends; applied at once to agents because they can act); retire at once; keep running on a dated exception
If decided late: Unowned accounts can't be disposed of, and Gate 1 can't pass
Source: ../books/b04-access/06-who-decides-access.md#ownership-changes-and-orphaned-apps</Notes>
      <PredecessorLink>
        <PredecessorUID>10</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>15</UID>
      <ID>15</ID>
      <Name>NP1.3 Unowned identities disabled, not deleted, under the orphan rule; each a retirement candidate with a 30-day claim window</Name>
      <OutlineNumber>2.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-04T08:00:00</Start>
      <Finish>2027-03-10T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity governance officer</Contact>
      <Notes>Owner or approver: Identity governance officer
Source: ../books/guides/attribute-driven-migration.md#service-accounts-msas-gmsas-and-dmsas</Notes>
      <PredecessorLink>
        <PredecessorUID>12</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>14</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>16</UID>
      <ID>16</ID>
      <Name>NPG1 Gate 1 — Every non-person identity owned</Name>
      <OutlineNumber>2.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-10T17:00:00</Start>
      <Finish>2027-03-10T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Criteria: Every service account has a named application owner; every app registration and service principal outside the privileged sweep (Privileged Access plan, A3.4) has two human owners and a service-management reference; every AI identity has a federal sponsor, a sponsoring group, a technical owner and a matching inventory record; every unowned identity is disabled pending retirement or carries a dated exception
Source: ../books/b02-identity/09-building-the-entra-target.md#governing-service-principals</Notes>
      <PredecessorLink>
        <PredecessorUID>13</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>15</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>17</UID>
      <ID>17</ID>
      <Name>Phase 2 — Decide per account</Name>
      <OutlineNumber>3</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-03-11T08:00:00</Start>
      <Finish>2027-04-07T17:00:00</Finish>
    </Task>
    <Task>
      <UID>18</UID>
      <ID>18</ID>
      <Name>NP2.1 Target set per account from the migration path matrix: app registration, managed identity, gMSA or dMSA, or retirement</Name>
      <OutlineNumber>3.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-11T08:00:00</Start>
      <Finish>2027-03-31T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering, with application owners</Contact>
      <Notes>Owner or approver: Identity engineering, with application owners
Source: ../books/b02-identity/09-building-the-entra-target.md#the-migration-path-matrix</Notes>
      <PredecessorLink>
        <PredecessorUID>16</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>19</UID>
      <ID>19</ID>
      <Name>D-NP3 Retire, re-platform or keep, account by account</Name>
      <OutlineNumber>3.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-31T17:00:00</Start>
      <Finish>2027-03-31T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Application owners</Contact>
      <Notes>Owner or approver: Application owners
Options: Retire (unused or unowned); re-platform to a managed identity, a gMSA or dMSA, or an app registration with a federated credential or certificate; keep on Kerberos with an SPN, islanded with an end date the authorizing official accepts
If decided late: The conversion waves can't be built, and the program's SPN retirement (P4.6) has no list to work from
Source: ../books/guides/attribute-driven-migration.md#non-person-identity-track</Notes>
      <PredecessorLink>
        <PredecessorUID>18</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>20</UID>
      <ID>20</ID>
      <Name>D-NP4 Workload ID Premium licensing scope</Name>
      <OutlineNumber>3.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-31T17:00:00</Start>
      <Finish>2027-03-31T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Options: License for the single-tenant service principals classified R1 (Book 04's position); license more widely; don't license, and rely on app management policies and owner reviews, with no workload Conditional Access
If decided late: Workload Conditional Access can't be created or changed, and privileged service principal reviews aren't available
Source: ../books/b04-access/05-applications-and-workload-identities.md#what-workload-id-premium-adds</Notes>
      <PredecessorLink>
        <PredecessorUID>18</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>21</UID>
      <ID>21</ID>
      <Name>NP2.2 Conversion waves sequenced: HIGH-risk accounts first (password never expires, over-privileged); rollback recorded per wave</Name>
      <OutlineNumber>3.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-01T08:00:00</Start>
      <Finish>2027-04-07T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b02-identity/10-migrating-and-governing.md#phase-4-service-account-modernization</Notes>
      <PredecessorLink>
        <PredecessorUID>19</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>22</UID>
      <ID>22</ID>
      <Name>NPG2 Gate 2 — Every account has a decision</Name>
      <OutlineNumber>3.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-07T17:00:00</Start>
      <Finish>2027-04-07T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>ISSO</Contact>
      <Notes>Owner or approver: ISSO
Criteria: Every account in the register has a disposition (retire, re-platform, or keep with an end date) and a target from the matrix; HIGH-risk accounts in the first wave; every kept Kerberos account has an SPN owner; waves and their rollback recorded
Source: ../books/b02-identity/10-migrating-and-governing.md#phase-4-service-account-modernization</Notes>
      <PredecessorLink>
        <PredecessorUID>21</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>20</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>23</UID>
      <ID>23</ID>
      <Name>Phase 3 — Credential modernization</Name>
      <OutlineNumber>4</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-01-28T08:00:00</Start>
      <Finish>2027-10-22T17:00:00</Finish>
    </Task>
    <Task>
      <UID>24</UID>
      <ID>24</ID>
      <Name>X-G1 Program G1 — Foundation Complete: groups and AUs drift-clean, Conditional Access baseline enforced</Name>
      <OutlineNumber>4.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-02-26T17:00:00</Start>
      <Finish>2027-02-26T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Steward (program)</Contact>
      <Notes>Owner or approver: Steward (program)
If decided late: Conversion has no group and policy foundation to land on (Book 02 puts service accounts after group migration)
Source: program-master-schedule.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-02-26T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>25</UID>
      <ID>25</ID>
      <Name>NP3.1 App management policy: new client secrets and symmetric keys blocked, certificates capped at 180 days for new apps; app instance property lock on owned apps</Name>
      <OutlineNumber>4.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-28T08:00:00</Start>
      <Finish>2027-02-03T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b04-access/05-applications-and-workload-identities.md#enforcing-the-order-with-app-management-policies</Notes>
      <PredecessorLink>
        <PredecessorUID>10</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>26</UID>
      <ID>26</ID>
      <Name>NP3.2 Conversion wave 1, HIGH-risk accounts: workload identities created (managed identity, then federated credential, then certificate); federated token exchange tested</Name>
      <OutlineNumber>4.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-08T08:00:00</Start>
      <Finish>2027-04-28T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering, with application owners</Contact>
      <Notes>Owner or approver: Identity engineering, with application owners
Source: ../books/b02-identity/09-building-the-entra-target.md#workload-identity-federation</Notes>
      <PredecessorLink>
        <PredecessorUID>22</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>24</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>25</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>27</UID>
      <ID>27</ID>
      <Name>NP3.3 Conversion wave 1 parallel run: old and new credentials side by side for 30 days, then the legacy accounts disabled</Name>
      <OutlineNumber>4.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-29T08:00:00</Start>
      <Finish>2027-05-28T17:00:00</Finish>
      <Duration>PT176H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Application owners</Contact>
      <Notes>Owner or approver: Application owners
Source: ../books/b02-identity/10-migrating-and-governing.md#phase-4-service-account-modernization</Notes>
      <PredecessorLink>
        <PredecessorUID>26</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>28</UID>
      <ID>28</ID>
      <Name>NP3.4 Remaining waves converted, each with its own 30-day parallel run before the legacy account is disabled</Name>
      <OutlineNumber>4.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-05-13T08:00:00</Start>
      <Finish>2027-08-04T17:00:00</Finish>
      <Duration>PT480H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering, with application owners</Contact>
      <Notes>Owner or approver: Identity engineering, with application owners
Source: ../books/b02-identity/10-migrating-and-governing.md#phase-4-service-account-modernization</Notes>
      <PredecessorLink>
        <PredecessorUID>27</PredecessorUID>
        <Type>3</Type>
        <LinkLag>48000</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>29</UID>
      <ID>29</ID>
      <Name>NP3.5 Kerberos-only workloads: MSAs upgraded to gMSAs; traditional accounts, IIS application pools and scheduled tasks moved to a gMSA or a dMSA</Name>
      <OutlineNumber>4.6</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-08T08:00:00</Start>
      <Finish>2027-05-05T17:00:00</Finish>
      <Duration>PT160H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Server infrastructure</Contact>
      <Notes>Owner or approver: Server infrastructure
Source: ../books/b02-identity/09-building-the-entra-target.md#the-migration-path-matrix</Notes>
      <PredecessorLink>
        <PredecessorUID>22</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>24</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>30</UID>
      <ID>30</ID>
      <Name>X-D08 End dates for legacy authentication and NTLM (program D08)</Name>
      <OutlineNumber>4.7</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-23T17:00:00</Start>
      <Finish>2027-04-23T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Authorizing official (program)</Contact>
      <Notes>Owner or approver: Authorizing official (program)
If decided late: Kerberos accounts that stay can't be given end dates, so the islanded list can't be handed to the program
Source: program-master-schedule.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-04-23T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>31</UID>
      <ID>31</ID>
      <Name>NP3.6 Kerberos accounts that stay: SPN owner and an end date within D08 recorded; the islanded list handed to the program's SPN retirement</Name>
      <OutlineNumber>4.8</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-05-06T08:00:00</Start>
      <Finish>2027-05-12T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b02-identity/10-migrating-and-governing.md#what-still-needs-ad-after-phase-10</Notes>
      <PredecessorLink>
        <PredecessorUID>29</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>30</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>32</UID>
      <ID>32</ID>
      <Name>NP3.7 Rotation in place: certificates in Key Vault, rotated by the pipeline, raised before expiry and approved by the owner</Name>
      <OutlineNumber>4.9</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-29T08:00:00</Start>
      <Finish>2027-05-12T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b04-access/05-applications-and-workload-identities.md#governing-app-registrations</Notes>
      <PredecessorLink>
        <PredecessorUID>26</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>33</UID>
      <ID>33</ID>
      <Name>NPG3 Gate 3 — Credentials modernized</Name>
      <OutlineNumber>4.10</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-08-04T17:00:00</Start>
      <Finish>2027-08-04T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>ISSO</Contact>
      <Notes>Owner or approver: ISSO
Criteria: Every HIGH-risk account converted or retired; no account with a password that never expires; new identities authenticate without stored secrets where the host allows, otherwise with a certificate on the rotation schedule; no client secret in production outside a dated exception; legacy accounts disabled after a clean 30-day parallel run with no service disruption; every remaining Kerberos account islanded with an owner and end date
Source: ../books/b02-identity/10-migrating-and-governing.md#phase-4-service-account-modernization</Notes>
      <PredecessorLink>
        <PredecessorUID>28</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>31</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>32</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>34</UID>
      <ID>34</ID>
      <Name>X-DG4 SQL Server's application chain on Entra principals (Data Platform plan, Gate 4)</Name>
      <OutlineNumber>4.11</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-07-22T17:00:00</Start>
      <Finish>2027-07-22T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>ISSO (Data Platform Identity Transformation plan)</Contact>
      <Notes>Owner or approver: ISSO (Data Platform Identity Transformation plan)
If decided late: The SQL Server accounts handed over in Phase 0 are still on Windows authentication
Source: data-platform.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-07-22T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>35</UID>
      <ID>35</ID>
      <Name>X-P46 AD-bound service principal names migrated, retired or islanded (program P4.6)</Name>
      <OutlineNumber>4.12</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-10-22T17:00:00</Start>
      <Finish>2027-10-22T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Application owners (program)</Contact>
      <Notes>Owner or approver: Application owners (program)
If decided late: The program measures AD authentication for G4 while converted workloads still hold AD credentials
Source: program-master-schedule.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-10-22T17:00:00</ConstraintDate>
      <PredecessorLink>
        <PredecessorUID>33</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>36</UID>
      <ID>36</ID>
      <Name>Phase 4 — Least privilege</Name>
      <OutlineNumber>5</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-03-11T08:00:00</Start>
      <Finish>2027-06-18T17:00:00</Finish>
    </Task>
    <Task>
      <UID>37</UID>
      <ID>37</ID>
      <Name>NP4.1 Permission sweep: owners review every grant; broad permissions such as Directory.ReadWrite.All replaced with application-specific roles and scopes</Name>
      <OutlineNumber>5.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-11T08:00:00</Start>
      <Finish>2027-04-14T17:00:00</Finish>
      <Duration>PT200H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Application owners</Contact>
      <Notes>Owner or approver: Application owners
Source: ../books/b02-identity/09-building-the-entra-target.md#governing-service-principals</Notes>
      <PredecessorLink>
        <PredecessorUID>16</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>38</UID>
      <ID>38</ID>
      <Name>NP4.2 Managed identities' role assignments scoped to the resource and put on the app registrations' review cadence</Name>
      <OutlineNumber>5.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-11T08:00:00</Start>
      <Finish>2027-03-24T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b04-access/05-applications-and-workload-identities.md#managed-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>16</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>39</UID>
      <ID>39</ID>
      <Name>X-A34 Non-human privileged identities owned, off secrets, over-consented apps swept (Privileged Access plan, A3.4)</Name>
      <OutlineNumber>5.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-06-18T17:00:00</Start>
      <Finish>2027-06-18T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Identity governance officer (Privileged Access &amp; Administrative Identity plan)</Contact>
      <Notes>Owner or approver: Identity governance officer (Privileged Access &amp; Administrative Identity plan)
If decided late: Privileged service principals are outside this plan's sweep, so the least-privilege gate can't pass
Source: privileged-access.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-06-18T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>40</UID>
      <ID>40</ID>
      <Name>NP4.3 First quarterly owner review of permissions closed; access reviews for service principals in privileged roles</Name>
      <OutlineNumber>5.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-15T08:00:00</Start>
      <Finish>2027-05-05T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity governance officer</Contact>
      <Notes>Owner or approver: Identity governance officer
Source: ../books/guides/attribute-driven-migration.md#service-principals-managed-identities-and-workload-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>37</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>38</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>20</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>41</UID>
      <ID>41</ID>
      <Name>NPG4 Gate 4 — Least privilege</Name>
      <OutlineNumber>5.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-06-18T17:00:00</Start>
      <Finish>2027-06-18T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Criteria: No service principal holds a broad tenant-wide permission without a recorded justification; managed identities' role assignments scoped to resources; privileged non-human identities closed in the Privileged Access plan; the first quarterly review cycle closed with its findings acted on
Source: ../books/b02-identity/09-building-the-entra-target.md#governing-service-principals</Notes>
      <PredecessorLink>
        <PredecessorUID>40</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>39</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>42</UID>
      <ID>42</ID>
      <Name>Phase 5 — Conditional Access for workload identities</Name>
      <OutlineNumber>6</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-04-01T08:00:00</Start>
      <Finish>2027-05-19T17:00:00</Finish>
    </Task>
    <Task>
      <UID>43</UID>
      <ID>43</ID>
      <Name>NP5.1 Scope set: R1 single-tenant service principals assigned directly, never through a group; workload egress ranges named; managed identities and multitenant apps recorded as out of scope</Name>
      <OutlineNumber>6.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-01T08:00:00</Start>
      <Finish>2027-04-07T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b02-identity/09-building-the-entra-target.md#conditional-access-for-workload-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>20</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>24</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>16</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>44</UID>
      <ID>44</ID>
      <Name>NP5.2 CA015 location restriction and CA037 high-risk block in report-only; service principal sign-in logs read</Name>
      <OutlineNumber>6.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-08T08:00:00</Start>
      <Finish>2027-05-05T17:00:00</Finish>
      <Duration>PT160H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b04-access/07-the-conditional-access-policy-library.md#wave-4-risk-and-workload-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>43</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>45</UID>
      <ID>45</ID>
      <Name>D-NP5 Enforce the workload identity policies</Name>
      <OutlineNumber>6.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-05-05T17:00:00</Start>
      <Finish>2027-05-05T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Options: Enforce; extend report-only; enforce with named exclusions, each recorded with its owner and end date
If decided late: R1 workloads stay reachable from anywhere with a stolen credential, and Gate 5 can't pass
Source: ../books/b04-access/05-applications-and-workload-identities.md#conditional-access-for-workload-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>44</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>46</UID>
      <ID>46</ID>
      <Name>NP5.3 Policies enforced ring by ring; block events alerted to security operations</Name>
      <OutlineNumber>6.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-05-06T08:00:00</Start>
      <Finish>2027-05-19T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b04-access/07-the-conditional-access-policy-library.md#wave-4-risk-and-workload-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>45</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>47</UID>
      <ID>47</ID>
      <Name>NPG5 Gate 5 — Workload identities under Conditional Access</Name>
      <OutlineNumber>6.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-05-19T17:00:00</Start>
      <Finish>2027-05-19T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Criteria: Every R1 single-tenant service principal assigned directly to the enforced location and risk policies; report-only results reviewed before enforcement; every out-of-scope identity (managed identities, multitenant and SaaS apps) recorded with the control that covers it instead
Source: ../books/b04-access/05-applications-and-workload-identities.md#conditional-access-for-workload-identities</Notes>
      <PredecessorLink>
        <PredecessorUID>46</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>48</UID>
      <ID>48</ID>
      <Name>Phase 6 — AI agents</Name>
      <OutlineNumber>7</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-01-18T08:00:00</Start>
      <Finish>2027-05-07T17:00:00</Finish>
    </Task>
    <Task>
      <UID>49</UID>
      <ID>49</ID>
      <Name>D-NP6 AI identity capabilities the program builds on in the agency's cloud</Name>
      <OutlineNumber>7.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-15T17:00:00</Start>
      <Finish>2027-01-15T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CIO, with the Chief AI Officer</Contact>
      <Notes>Owner or approver: CIO, with the Chief AI Officer
Options: Agent identities where generally available in the agency's cloud, with GCC's documented subset; service principals and managed identities under the same governance where agent identities aren't available; preview capabilities as watch items
If decided late: Agents are created with no decided identity type, and the production handshake can't be defined
Source: ../books/b17-ai-identity/04-kinds-of-ai-identity.md#release-stage-licensing-and-government-clouds</Notes>
      <PredecessorLink>
        <PredecessorUID>6</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>50</UID>
      <ID>50</ID>
      <Name>NP6.1 Creation closed: Users can create agent blueprints set to No; agent app registrations routed to the blueprint path; consent baseline applied to agents</Name>
      <OutlineNumber>7.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-28T08:00:00</Start>
      <Finish>2027-02-01T17:00:00</Finish>
      <Duration>PT24H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b17-ai-identity/06-credentials-and-least-privilege.md#admin-consent-and-the-scuba-consent-baseline</Notes>
      <PredecessorLink>
        <PredecessorUID>10</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>51</UID>
      <ID>51</ID>
      <Name>NP6.2 Production handshake: blueprint, sponsor, consent, Conditional Access coverage and placement confirmed; access through expiring access packages</Name>
      <OutlineNumber>7.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-02-18T08:00:00</Start>
      <Finish>2027-03-03T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b17-ai-identity/05-owners-sponsors-and-lifecycle.md#creation</Notes>
      <PredecessorLink>
        <PredecessorUID>49</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>50</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>13</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>52</UID>
      <ID>52</ID>
      <Name>NP6.3 Agent credentials: managed identity as the blueprint credential, else federation, else a certificate; no secret on a production blueprint</Name>
      <OutlineNumber>7.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-04T08:00:00</Start>
      <Finish>2027-03-24T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering, with technical owners</Contact>
      <Notes>Owner or approver: Identity engineering, with technical owners
Source: ../books/b17-ai-identity/06-credentials-and-least-privilege.md#no-stored-secrets</Notes>
      <PredecessorLink>
        <PredecessorUID>51</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>25</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>53</UID>
      <ID>53</ID>
      <Name>NP6.4 Agent least privilege: access mode chosen first; narrow inheritance, never allAllowed for app roles; no standing privileged role</Name>
      <OutlineNumber>7.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-04T08:00:00</Start>
      <Finish>2027-03-17T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b17-ai-identity/06-credentials-and-least-privilege.md#privileged-roles-for-ai-none-standing</Notes>
      <PredecessorLink>
        <PredecessorUID>51</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>54</UID>
      <ID>54</ID>
      <Name>X-IG4 Mover and leaver automation proven (Identity Lifecycle plan, Gate 4)</Name>
      <OutlineNumber>7.6</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-23T17:00:00</Start>
      <Finish>2027-04-23T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>ISSO (Identity Lifecycle &amp; Provisioning plan)</Contact>
      <Notes>Owner or approver: ISSO (Identity Lifecycle &amp; Provisioning plan)
If decided late: The sponsor's mover and leaver events have no HR-driven workflow to ride on
Source: identity-lifecycle.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-04-23T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>55</UID>
      <ID>55</ID>
      <Name>NP6.5 Sponsorship tasks added to the HR-driven mover and leaver workflows; ten-business-day confirmation; human workflows kept off agents' user accounts</Name>
      <OutlineNumber>7.7</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-04-26T08:00:00</Start>
      <Finish>2027-05-07T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b17-ai-identity/05-owners-sponsors-and-lifecycle.md#when-the-sponsor-moves-or-leaves</Notes>
      <PredecessorLink>
        <PredecessorUID>51</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>54</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>56</UID>
      <ID>56</ID>
      <Name>NP6.6 Agent Conditional Access in report-only: block all agent identities except those approved by attribute; block high-risk agents (preview, watch item)</Name>
      <OutlineNumber>7.8</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-04T08:00:00</Start>
      <Finish>2027-03-17T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b17-ai-identity/06-credentials-and-least-privilege.md#the-token-subject-decides-which-policy-applies</Notes>
      <PredecessorLink>
        <PredecessorUID>51</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>57</UID>
      <ID>57</ID>
      <Name>NP6.7 AI drift checks running: agentic system with no governed identity, shadow AI identity, no accountable human, credential added outside the pipeline</Name>
      <OutlineNumber>7.9</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-03-04T08:00:00</Start>
      <Finish>2027-03-17T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Security operations</Contact>
      <Notes>Owner or approver: Security operations
Source: ../books/b17-ai-identity/07-monitoring-drift-and-shadow-ai.md#drift-comparing-what-was-declared-with-what-is-observed</Notes>
      <PredecessorLink>
        <PredecessorUID>51</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>58</UID>
      <ID>58</ID>
      <Name>NPG6 Gate 6 — AI identities governed</Name>
      <OutlineNumber>7.10</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-05-07T17:00:00</Start>
      <Finish>2027-05-07T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>CISO</Contact>
      <Notes>Owner or approver: CISO
Criteria: Every AI system in the current inventory vintage classified by kind of identity; every agent identity created through the handshake with a sponsor, a technical owner and a matching inventory record; no production blueprint with a client secret; no AI identity with a standing privileged role; sponsor mover and leaver tasks live; agent block policies in report-only with results reviewed; no open P1 AI drift finding
Source: ../books/b17-ai-identity/10-evidence-and-authorization.md#the-evidence-an-authorizing-official-needs</Notes>
      <PredecessorLink>
        <PredecessorUID>52</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>53</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>55</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>56</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>57</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>59</UID>
      <ID>59</ID>
      <Name>Phase 7 — Steady state</Name>
      <OutlineNumber>8</OutlineNumber>
      <OutlineLevel>1</OutlineLevel>
      <Summary>1</Summary>
      <Start>2027-02-01T08:00:00</Start>
      <Finish>2027-12-03T17:00:00</Finish>
    </Task>
    <Task>
      <UID>60</UID>
      <ID>60</ID>
      <Name>NP7.1 Register drift scheduled: ownerless, unused or expiring registrations, passwords that never expire, credentials added outside the pipeline</Name>
      <OutlineNumber>8.1</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-08-05T08:00:00</Start>
      <Finish>2027-08-18T17:00:00</Finish>
      <Duration>PT80H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/b02-identity/10-migrating-and-governing.md#git-based-drift-detection</Notes>
      <PredecessorLink>
        <PredecessorUID>33</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>61</UID>
      <ID>61</ID>
      <Name>NP7.2 A full review cycle: owners' quarterly permission review, sponsors' attestation, expiry-based recertification of agent access</Name>
      <OutlineNumber>8.2</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-06-21T08:00:00</Start>
      <Finish>2027-07-09T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity governance officer</Contact>
      <Notes>Owner or approver: Identity governance officer
Source: ../books/b17-ai-identity/05-owners-sponsors-and-lifecycle.md#recertification-expiry-is-the-review</Notes>
      <PredecessorLink>
        <PredecessorUID>41</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>58</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>62</UID>
      <ID>62</ID>
      <Name>X-D11 Provisional target end state: AD retired, or a dated Kerberos island (program D11)</Name>
      <OutlineNumber>8.3</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-01-29T17:00:00</Start>
      <Finish>2027-01-29T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Executive sponsor and CIO (program)</Contact>
      <Notes>Owner or approver: Executive sponsor and CIO (program)
If decided late: The gMSA and dMSA reconciliation has no target to reconcile against
Source: program-master-schedule.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-01-29T17:00:00</ConstraintDate>
    </Task>
    <Task>
      <UID>63</UID>
      <ID>63</ID>
      <Name>NP7.3 gMSAs and dMSAs reconciled with the provisional end state: moved to a workload identity, or listed for the Kerberos island with an end-of-life date</Name>
      <OutlineNumber>8.4</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-08-05T08:00:00</Start>
      <Finish>2027-08-25T17:00:00</Finish>
      <Duration>PT120H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity engineering</Contact>
      <Notes>Owner or approver: Identity engineering
Source: ../books/guides/attribute-driven-migration.md#service-accounts-msas-gmsas-and-dmsas</Notes>
      <PredecessorLink>
        <PredecessorUID>62</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>33</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>64</UID>
      <ID>64</ID>
      <Name>X-G5 Program G5 — AD Retired</Name>
      <OutlineNumber>8.5</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-12-03T17:00:00</Start>
      <Finish>2027-12-03T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>Executive sponsor and CIO (program)</Contact>
      <Notes>Owner or approver: Executive sponsor and CIO (program)
If decided late: A workload still running under a gMSA loses its credential when the last domain controller is demoted
Source: program-master-schedule.md</Notes>
      <ConstraintType>4</ConstraintType>
      <ConstraintDate>2027-12-03T17:00:00</ConstraintDate>
      <PredecessorLink>
        <PredecessorUID>63</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>65</UID>
      <ID>65</ID>
      <Name>NP7.4 Evidence to the ISSO for AC-2, AC-6(5), IA-4, IA-5 and IA-9, and for M-25-21; the annual inventory vintage comparison scheduled</Name>
      <OutlineNumber>8.6</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-08-19T08:00:00</Start>
      <Finish>2027-08-25T17:00:00</Finish>
      <Duration>PT40H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>0</Milestone>
      <Contact>Identity governance officer</Contact>
      <Notes>Owner or approver: Identity governance officer
Source: ../books/guides/attribute-driven-migration.md#federal-requirements</Notes>
      <PredecessorLink>
        <PredecessorUID>60</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>61</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
    <Task>
      <UID>66</UID>
      <ID>66</ID>
      <Name>NPG7 Gate 7 — Steady state</Name>
      <OutlineNumber>8.7</OutlineNumber>
      <OutlineLevel>2</OutlineLevel>
      <Start>2027-08-25T17:00:00</Start>
      <Finish>2027-08-25T17:00:00</Finish>
      <Duration>PT0H0M0S</Duration>
      <DurationFormat>7</DurationFormat>
      <Milestone>1</Milestone>
      <Contact>ISSO</Contact>
      <Notes>Owner or approver: ISSO
Criteria: Every service account and service principal has an owner and sponsor, a reason and a target; each is retired, re-platformed to a managed identity or gMSA, or a certificate or federated workload identity; none holds a password that never expires and none is orphaned; drift checks and review cycles running; every remaining gMSA and dMSA moved or in the dated Kerberos island
Source: ../books/guides/attribute-driven-migration.md#non-person-identity-track</Notes>
      <PredecessorLink>
        <PredecessorUID>63</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>65</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
      <PredecessorLink>
        <PredecessorUID>47</PredecessorUID>
        <Type>1</Type>
        <LinkLag>0</LinkLag>
        <LagFormat>7</LagFormat>
      </PredecessorLink>
    </Task>
  </Tasks>
</Project>
