A Microsoft Entra felhasználói kiépítési szolgáltatás SCIM 2.0 protokollmegfelelőségének ismert problémái és megoldásai

A Microsoft Entra ID automatikusan kiépíthet felhasználókat és csoportokat bármely olyan alkalmazáshoz vagy rendszerhez, amelyet egy webszolgáltatás előtérként használ a System for Cross-Domain Identity Management (SCIM) 2.0 protokollspecifikációban meghatározott felülettel.

Az SCIM 2.0 protokoll Microsoft Entra ID-támogatását a Rendszer a tartományok közötti identitáskezeléshez (SCIM) című cikk ismerteti a felhasználók és csoportok Automatikus kiépítéséhez a Microsoft Entra ID-ből az alkalmazásokba, amely felsorolja a protokoll azon részeit, amelyeket az implementál annak érdekében, hogy automatikusan kiépíthessen felhasználókat és csoportokat a Microsoft Entra ID-ból az SCIM 2.0-t támogató alkalmazásokba.

Ez a cikk a Microsoft Entra felhasználói kiépítési szolgáltatás SCIM 2.0 protokollhoz való csatlakozásával kapcsolatos aktuális és korábbi problémákat, valamint a problémák megoldásának módját ismerteti.

A kiépítési feladat ismertetése

A kiépítési szolgáltatás a feladat fogalmát használja egy alkalmazáson való működéshez. A feladatazonosító a folyamatjelző sávon található. Minden új kiépítési alkalmazás a "scim" kezdetű feladatazonosítóval jön létre. A scim feladat a szolgáltatás aktuális állapotát jelöli. A régebbi feladatok "customappsso" azonosítóval rendelkeznek. Ez a feladat a szolgáltatás 2018-ra vonatkozó állapotát jelöli.

Ha egy alkalmazást használ a katalógusban, a feladat általában tartalmazza az alkalmazás nevét (például zoom snowFlake vagy dataBricks). Katalógusalkalmazás használata esetén kihagyhatja ezt a dokumentációt. Ez elsősorban a jobID SCIM- vagy customAppSSO-val rendelkező, katalóguson kívüli alkalmazásokra vonatkozik.

SCIM 2.0 megfelelőségi problémák és állapot

Az alábbi táblázatban a rögzítettként megjelölt elemek azt jelentik, hogy a megfelelő viselkedés megtalálható az SCIM-feladatban. Azon dolgoztunk, hogy a módosítások visszamenőleges kompatibilitást biztosítsanak. Javasoljuk, hogy az új viselkedést használja az új implementációkhoz és a meglévő implementációk frissítéséhez. Vegye figyelembe, hogy a customappSSO 2018 decembere előtti alapértelmezett viselkedése már nem támogatott.

Megjegyzés:

A 2018-ban végrehajtott módosítások esetében vissza lehet térni a customappsso viselkedésre. A 2018 óta végrehajtott módosítások esetén az URL-címek használatával visszaállhat a régebbi viselkedésre. Azon dolgoztunk, hogy visszafelé kompatibilitást biztosítsunk a végrehajtott módosításokhoz azáltal, hogy lehetővé tesszük a régi feladatazonosítóra való visszatérést, vagy egy jelölő használatával. Azonban, mint korábban említettük, nem javasoljuk a régi viselkedés implementálását, mivel az már nem támogatott. Javasoljuk, hogy az új viselkedést használja az új implementációkhoz és a meglévő implementációk frissítéséhez.

SCIM 2.0 megfelelőségi probléma Rögzített? Javítás dátuma Visszamenőleges kompatibilitás
A Microsoft Entra-azonosító megköveteli, hogy a "/scim" az alkalmazás SCIM-végpontJÁNAK URL-címének gyökerében legyen Igen 2018. december 18. visszalépés a customappSSO-ra
A bővítményattribútumok kettőspont helyett "." jelölést használnak az attribútumnevek előtt :" jelölés Igen 2018. december 18. visszalépés a customappSSO-ra
A többértékű attribútumok javítási kérelmei érvénytelen elérésiút-szűrőszintaxist tartalmaznak Igen 2018. december 18. visszalépés a customappSSO-ra
A csoportlétrehozási kérelmek érvénytelen séma URI-t tartalmaznak Igen 2018. december 18. visszalépés a customappSSO-ra
A PATCH viselkedésének frissítése a megfelelőség biztosítása érdekében (pl. logikai és megfelelő csoporttagság-eltávolítás) Nem Később eldöntendő funkciójelző használata

Az SCIM viselkedésének módosítására vonatkozó jelzők

Az alapértelmezett SCIM-ügyfél viselkedésének módosításához használja az alkalmazás bérlői URL-címében az alábbi jelzőket.

SCIM flags to later behavior.

A patch viselkedésének frissítéséhez és az SCIM-megfelelőség biztosításához használja az alábbi URL-címet. A jelölő a következő viselkedést módosítja:

  • Felhasználók letiltására irányuló kérések
  • Egyértékű sztringattribútum hozzáadására vonatkozó kérések
  • Több attribútum cseréjére irányuló kérelmek
  • Csoporttag eltávolítására vonatkozó kérések

Ez a viselkedés jelenleg csak a jelölő használatakor érhető el, de a következő néhány hónapban ez lesz az alapértelmezett viselkedés. Vegye figyelembe, hogy ez a funkciójelző jelenleg nem működik igény szerinti kiépítéssel.

Az alábbi mintakérések segítenek felvázolni, hogy a szinkronizálási motor jelenleg mit küld a funkciójelző engedélyezése után küldött kérésekkel szemben.

A felhasználók letiltására irányuló kérések:

Funkciójelző nélkül

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
      {
          "op": "Replace",
          "path": "active",
          "value": "False"
      }
  ]
}

Funkciójelzővel

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
      {
          "op": "replace",
          "path": "active",
          "value": false
      }
  ]
}

Egyértékű sztringattribútum hozzáadására irányuló kérések:

Funkciójelző nélkül

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
    {
      "op": "Add",
      "path": "nickName",
      "value": "Babs"
    }
  ]
}

Funkciójelzővel

{
  "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
  "Operations": [
    {
      "op": "add",
      "path": "nickName",
      "value": "Babs"
    }
  ]
}

Több attribútum cseréjére irányuló kérések:

Funkciójelző nélkül

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
      {
          "op": "Replace",
          "path": "displayName",
          "value": "Pvlo"
      },
      {
          "op": "Replace",
          "path": "emails[type eq \"work\"].value",
          "value": "TestBcwqnm@test.microsoft.com"
      },
      {
          "op": "Replace",
          "path": "name.givenName",
          "value": "Gtfd"
      },
      {
          "op": "Replace",
          "path": "name.familyName",
          "value": "Pkqf"
      },
      {
          "op": "Replace",
          "path": "externalId",
          "value": "Eqpj"
      },
      {
          "op": "Replace",
          "path": "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber",
          "value": "Eqpj"
      }
  ]
}

Funkciójelzővel

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
      {
          "op": "replace",
          "path": "emails[type eq \"work\"].value",
          "value": "TestMhvaes@test.microsoft.com"
      },
      {
          "op": "replace",
          "value": {
              "displayName": "Bjfe",
              "name.givenName": "Kkom",
              "name.familyName": "Unua",
              "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber": "Aklq"
          }
      }
  ]
}

Csoporttag eltávolítására irányuló kérések:

Funkciójelző nélkül

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
      {
          "op": "Remove",
          "path": "members",
          "value": [
              {
                  "value": "u1091"
              }
          ]
      }
  ]
}

Funkciójelzővel

{
  "schemas": [
      "urn:ietf:params:scim:api:messages:2.0:PatchOp"
  ],
  "Operations": [
      {
          "op": "remove",
          "path": "members[value eq \"7f4bc1a3-285e-48ae-8202-5accb43efb0e\"]"
      }
  ]
}
  • Visszalépési URL-cím: Ha az új SCIM-kompatibilis viselkedés alapértelmezettként működik a katalóguson kívüli alkalmazásban, a következő URL-cím használatával visszaállíthatja a régi, nem SCIM-kompatibilis viselkedést: AzureAdScimPatch2017

Frissítés a régebbi customappsso feladatról az SCIM-feladatra

Az alábbi lépéseket követve törli a meglévő customappsso-feladatot, és létrehoz egy új SCIM-feladatot.

  1. Jelentkezzen be a Microsoft Entra felügyeleti központba legalább alkalmazásként Rendszergazda istratorként.

  2. Keresse meg az Identity>Applications>Enterprise-alkalmazásokat.

  3. Keresse meg és válassza ki a meglévő SCIM-alkalmazást.

  4. A meglévő SCIM-alkalmazás Tulajdonságok szakaszában másolja ki az objektumazonosítót.

  5. Egy új webböngészőablakban lépjen https://developer.microsoft.com/graph/graph-explorer be és jelentkezzen be rendszergazdaként annak a Microsoft Entra-bérlőnek, ahol az alkalmazás hozzáadva van.

  6. A Graph Explorerben futtassa az alábbi parancsot a kiépítési feladat azonosítójának megkereséséhez. Cserélje le az "[object-id]" elemet a harmadik lépésből kimásolt szolgáltatásnév-azonosítóra (objektumazonosítóra).

    GET https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs

    Get Jobs

  7. Az eredmények között másolja ki a teljes "ID" sztringet, amely a "customappsso" vagy a "scim" karakterrel kezdődik.

  8. Futtassa az alábbi parancsot az attribútumleképezési konfiguráció lekéréséhez, hogy készítsen biztonsági másolatot. Használja ugyanazt az [object-id] azonosítót, mint korábban, és cserélje le a [job-id] kifejezést az utolsó lépésből kimásolt kiépítési feladatazonosítóra.

    GET https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[job-id]/schema

    Get Schema

  9. Másolja ki a JSON-kimenetet az utolsó lépésből, és mentse egy szövegfájlba. A JSON tartalmazza a régi alkalmazáshoz hozzáadott egyéni attribútumleképezéseket, és körülbelül néhány ezer sor JSON-nak kell lennie.

  10. Futtassa az alábbi parancsot a kiépítési feladat törléséhez:

    DELETE https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[job-id]

  11. Futtassa az alábbi parancsot egy új kiépítési feladat létrehozásához, amely a legújabb szolgáltatásjavításokkal rendelkezik.

POST https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs { "templateId": "scim" }

  1. Az utolsó lépés eredményei között másolja ki a "scim" kezdetű teljes "ID" sztringet. A régi attribútumleképezések ismételt alkalmazásához futtassa az alábbi parancsot, cserélje le az [new-job-id] elemet a másolt új feladatazonosítóra, és adja meg a JSON-kimenetet a 7. lépésben a kérelem törzseként.

PUT https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs/[new-job-id]/schema { <your-schema-json-here> }

  1. Térjen vissza az első webböngésző ablakához, és válassza az alkalmazás Kiépítés lapját.
  2. Ellenőrizze a konfigurációt, majd indítsa el a kiépítési feladatot.

Lehetővé tesszük a régi viselkedésre való visszalépést, de nem javasoljuk, mivel a customappsso nem élvezi az általunk végzett frissítések némelyikét, és nem biztos, hogy örökre támogatott.

  1. Jelentkezzen be a Microsoft Entra felügyeleti központba legalább alkalmazásként Rendszergazda istratorként.

  2. Keresse meg az Identity>Applications>Enterprise-alkalmazásokat.

  3. Az Alkalmazás létrehozása szakaszban hozzon létre egy új nem katalógusbeli alkalmazást.

  4. Az új egyéni alkalmazás Tulajdonságok szakaszában másolja ki az objektumazonosítót.

  5. Egy új webböngészőablakban lépjen https://developer.microsoft.com/graph/graph-explorer be és jelentkezzen be rendszergazdaként annak a Microsoft Entra-bérlőnek, ahol az alkalmazás hozzáadva van.

  6. A Graph Explorerben futtassa az alábbi parancsot az alkalmazás kiépítési konfigurációjának inicializálásához. Cserélje le az "[object-id]" elemet a harmadik lépésből kimásolt szolgáltatásnév-azonosítóra (objektumazonosítóra).

    POST https://graph.microsoft.com/beta/servicePrincipals/[object-id]/synchronization/jobs { templateId: "customappsso" }

  7. Térjen vissza az első webböngésző ablakához, és válassza az alkalmazás Kiépítés lapját.

  8. A szokásos módon végezze el a felhasználókiépítési konfigurációt.

További lépések

További információ az SaaS-alkalmazások üzembe helyezéséről és kiépítésének megszüntetéséről