Podrobnosti o službě PAM REST API
Následující části popisují podrobnosti o rozhraní REST API PAM (Microsoft Identity Manager) Privileged Access Management (MIM).
Hlavičky požadavků HTTP
Požadavky HTTP odesílané do rozhraní API by měly obsahovat následující hlavičky (tento seznam není vyčerpávající):
Hlavička | Description |
---|---|
Autorizace | Povinná hodnota. Obsah závisí na metodě ověřování, která je konfigurovatelná a může být založena na WIA (Integrované ověřování systému Windows) nebo ADFS. |
Typ obsahu | Vyžaduje se, pokud má žádost text. Musí být nastavená na application/json hodnotu . |
Délka obsahu | Vyžaduje se, pokud má žádost text. |
Soubor cookie | Soubor cookie relace. Může být vyžadován v závislosti na metodě ověřování. |
Hlavičky odpovědi HTTP
Odpovědi HTTP by měly obsahovat následující hlavičky (tento seznam není vyčerpávající):
Hlavička | Description |
---|---|
Typ obsahu | Rozhraní API vždy vrátí application/json . |
Délka obsahu | Délka textu požadavku (pokud je k dispozici) v bajtech. |
Správa verzí
Aktuální verze rozhraní API je 1.
Verzi rozhraní API je možné zadat pomocí parametru dotazu v adrese URL požadavku, jak je znázorněno v následujícím příkladu: http://localhost:8086/api/pamresources/pamrequests?v=1
Pokud v požadavku není uvedená verze, požadavek se provede pro naposledy vydanou verzi rozhraní API.
Zabezpečení
Přístup k rozhraní API vyžaduje integrované ověřování systému Windows (IWA). Toto nastavení by se mělo ručně nakonfigurovat ve službě IIS před instalací Microsoft Identity Manager (MIM).
Podporuje se protokol HTTPS (TLS), ale měl by se ve službě IIS nakonfigurovat ručně. Informace najdete v tématu Implementace protokolu SSL (Secure Sockets Layer) pro portál FIM v části Krok 9: Provedení poinstalační úlohy FIM 2010 R2 v průvodci instalací testovací laboratoře FIM 2010 R2.
Nový certifikát serveru SSL můžete vygenerovat spuštěním následujícího příkazu na příkazovém řádku sady Visual Studio:
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
Příkaz vytvoří certifikát podepsaný svým držitelem, který lze použít k otestování webové aplikace, která používá protokol SSL, na webovém serveru s adresou URL test.cwap.com
. Identifikátor identifikátoru definovaný -eku
možností identifikuje certifikát jako certifikát serveru SSL. Certifikát je uložený v mém úložišti a je k dispozici na úrovni počítače. Certifikát můžete exportovat z modulu snap-in Certifikáty v mmc.exe.
Přístup mezi doménami (CORS)
CORS se podporuje, ale ve službě IIS by se měl nakonfigurovat ručně. Do souboru nasazeného rozhraní API web.config přidejte následující prvky a nakonfigurujte rozhraní API tak, aby umožňovalo volání mezi doménou:
<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>
Zpracování chyb
Rozhraní API vrací chybové odpovědi HTTP, které označují chybové podmínky. Chyby jsou kompatibilní se standardem OData. Následující tabulka obsahuje kódy chyb, které se můžou vrátit klientovi:
Stavový kód HTTP | Popis |
---|---|
401 | Neautorizováno |
403 | Forbidden |
408 | Časový limit žádosti |
500 | Vnitřní chyba serveru |
503 | Nedostupná služba |
Filtrování
Požadavky ROZHRANÍ REST API PAM můžou obsahovat filtry, které určují vlastnosti, které by měly být součástí odpovědi. Syntaxe filtru je založená na výrazech OData.
Filtry můžou určovat libovolné vlastnosti požadavků PAM a rolí PAM. nebo Čekající požadavky PAM. Příklad: ExpirationTime, DisplayName nebo jakákoli jiná platná vlastnost požadavku PAM, role PAM nebo čekající žádosti.
Rozhraní API podporuje ve výrazech filtru následující operátory: And, Equal, NotEqual, GreaterThan, LessThan, GreaterThenOrEqueal a LessThanOrEqual.
Následující ukázkové požadavky zahrnují filtry:
Tento požadavek vrátí všechny požadavky PAM mezi konkrétními daty:
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'
Tento požadavek vrátí roli Pam se zobrazovaným názvem "SQL File Access":
http://localhost:8086/api/pamresources/pamroles?$filter=DisplayName eq 'SQL File Access'