PAM REST API-szolgáltatás részletei
A következő szakaszok a Microsoft Identity Manager (MIM) Privileged Access Management (PAM) REST API részleteit ismertetik.
HTTP-kérelem fejlécei
Az API-nak küldött HTTP-kéréseknek tartalmazniuk kell a következő fejléceket (ez a lista nem teljes):
Fejléc | Description |
---|---|
Engedélyezés | Kötelező. A tartalom a hitelesítési módszertől függ, amely konfigurálható, és a WIA (Integrált Windows-hitelesítés) vagy az ADFS alapján is használható. |
Content-Type | Kötelező, ha a kérelem törzset is fel van iktatva. A értéket értékre kell állítani.application/json |
Tartalomhossz | Kötelező, ha a kérelem törzset is fel van iktatva. |
Cookie | A munkamenet cookie-ja. A hitelesítési módszertől függően szükség lehet rá. |
HTTP-válaszfejlécek
A HTTP-válaszoknak tartalmazniuk kell a következő fejléceket (ez a lista nem teljes):
Fejléc | Description |
---|---|
Content-Type | Az API mindig a értéket adja application/json vissza. |
Tartalomhossz | A kérelem törzsének hossza (ha van ilyen), bájtban kifejezve. |
Verziókezelés
Az API jelenlegi verziója 1.
Az API-verzió a kérelem URL-címében található lekérdezési paraméterrel adható meg, ahogyan az alábbi példában is látható: http://localhost:8086/api/pamresources/pamrequests?v=1
Ha a verzió nincs megadva a kérelemben, a kérés az API legutóbb kiadott verziójával lesz végrehajtva.
Biztonság
Az API-hoz való hozzáféréshez integrált Windows-hitelesítésre (IWA) van szükség. Ezt manuálisan kell konfigurálni az IIS-ben a Microsoft Identity Manager (MIM) telepítése előtt.
A HTTPS (TLS) támogatott, de manuálisan kell konfigurálni az IIS-ben. További információ: Secure Sockets Layer (SSL) implementálása a FIM-portálhoz a 9. lépés: FIM 2010 R2 telepítés utáni feladatainak végrehajtása a FIM 2010 R2 tesztkörnyezeti útmutatójában.
Új SSL-kiszolgálói tanúsítványt a Visual Studio parancssorában a következő parancs futtatásával hozhat létre:
Makecert -r -pe -n CN="test.cwap.com" -b 05/10/2014 -e 12/22/2048 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localmachine -sky exchange -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12
A parancs létrehoz egy önaláírt tanúsítványt, amely egy SSL-t használó webalkalmazás tesztelésére használható egy olyan webkiszolgálón, ahol az URL-cím .test.cwap.com
A beállítás által -eku
meghatározott OID SSL-kiszolgálói tanúsítványként azonosítja a tanúsítványt. A tanúsítvány a saját áruházamban van tárolva, és a gép szintjén érhető el. A tanúsítványt a Tanúsítványok beépülő modulból exportálhatja mmc.exe.
Tartományközi hozzáférés (CORS)
A CORS támogatott, de manuálisan kell konfigurálni az IIS-ben. Adja hozzá a következő elemeket az üzembe helyezett API-web.config fájlhoz, hogy konfigurálja az API-t a tartományok közötti hívások engedélyezéséhez:
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Credentials" value="true" />
<add name="Access-Control-Allow-Headers" value="content-type" />
<add name="Access-Control-Allow-Origin" value="http://<hostname>:8090" />
</customHeaders>
</httpProtocol>
</system.webServer>
Hibakezelés
Az API HTTP-hibaválaszokat ad vissza a hibaállapotok jelzéséhez. A hibák OData-kompatibilisek. Az alábbi táblázat az ügyfélnek visszaadható hibakódokat mutatja be:
HTTP-állapotkód | Leírás |
---|---|
401 | Nem engedélyezett |
403 | Forbidden |
408 | Kérelem időtúllépése |
500 | Belső kiszolgálóhiba |
503 | A szolgáltatás nem érhető el |
Szűrés
A PAM REST API-kérések szűrőket is tartalmazhatnak a válaszban szereplő tulajdonságok megadásához. A szűrőszintaxis OData-kifejezéseken alapul.
A szűrők a PAM-kérések, a PAM-szerepkörök bármely tulajdonságát megadhatja. vagy függőben lévő PAM-kérelmek. Például: ExpirationTime, DisplayName vagy egy PAM-kérelem, PAM-szerepkör vagy függőben lévő kérelem bármely más érvényes tulajdonsága.
Az API a következő operátorokat támogatja a szűrőkifejezésekben: És, Equal, NotEqual, GreaterThan, LessThan, GreaterThenOrEqueal és LessThanOrEqual.
A következő mintakérések szűrőket tartalmaznak:
Ez a kérés visszaadja az összes PAM-kérelmet adott dátumok között:
http://localhost:8086/api/pamresources/pamrequests?$filter=ExpirationTime gt datetime'2015-01-09T08:26:49.721Z' and ExpirationTime lt datetime'2015-02-10T08:26:49.722Z'
Ez a kérés a Pam szerepkört adja vissza az "SQL-fájlhozzáférés" megjelenítendő névvel:
http://localhost:8086/api/pamresources/pamroles?$filter=DisplayName eq 'SQL File Access'