Details van de PAM REST API-service

In de volgende secties worden details van de REST API van Microsoft Identity Manager (MIM) Privileged Access Management (PAM) besproken.

HTTP-aanvraagheaders

HTTP-aanvragen die naar de API worden verzonden, moeten de volgende headers bevatten (deze lijst is niet volledig):

Koptekst Beschrijving
Machtiging Verplicht. De inhoud is afhankelijk van de verificatiemethode, die kan worden geconfigureerd en kan worden gebaseerd op WIA (Geïntegreerde Windows-verificatie) of ADFS.
Inhoudstype Vereist indien de aanvraag inhoud heeft. Moet worden ingesteld op application/json.
Lengte van inhoud Vereist indien de aanvraag inhoud heeft.
Koekje De sessiecookie. Mogelijk is dit vereist, afhankelijk van de verificatiemethode.

HTTP-antwoordheaders

HTTP-antwoorden moeten de volgende headers bevatten (deze lijst is niet volledig):

Koptekst Beschrijving
Inhoudstype De API retourneert altijd application/json.
Lengte van inhoud De lengte van de aanvraagbody, indien aanwezig, in bytes.

Versiebeheer

De huidige versie van de API is 1. De API-versie kan worden opgegeven via een queryparameter in de aanvraag-URL, zoals in het volgende voorbeeld: http://localhost:8086/api/pamresources/pamrequests?v=1 Als de versie niet is opgegeven in de aanvraag, wordt de aanvraag uitgevoerd op basis van de laatst uitgebrachte versie van de API.

Veiligheid

Voor toegang tot de API is Geïntegreerde Windows-verificatie (IWA) vereist. Dit moet handmatig worden geconfigureerd in IIS vóór de installatie van Microsoft Identity Manager (MIM).

HTTPS (TLS) wordt ondersteund, maar moet handmatig worden geconfigureerd in IIS. Zie voor meer informatie: Secure Sockets Layer (SSL) implementeren voor de FIM-portal in Stap 9: Uitvoeren van taken na de installatie van FIM 2010 R2 in de testlabhandleiding voor het installeren van FIM 2010 R2.

U kunt een nieuw SSL-servercertificaat genereren door de volgende opdracht uit te voeren op de Opdrachtprompt van 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

Met de opdracht maakt u een zelfondertekend certificaat dat kan worden gebruikt om een webtoepassing te testen die GEBRUIKMAAKT van SSL op een webserver waar de URL zich bevindt test.cwap.com. De OID die door de -eku optie is gedefinieerd, identificeert het certificaat als een SSL-servercertificaat. Het certificaat wordt opgeslagen in mijn archief en is beschikbaar op computerniveau. U kunt het certificaat exporteren uit de module Certificaten in mmc.exe.

CORS (Cross Domain Access)

CORS wordt ondersteund, maar moet handmatig worden geconfigureerd in IIS. Voeg de volgende elementen toe aan het geïmplementeerde API-web.config-bestand om de API te configureren voor het toestaan van aanroepen tussen domeinen:

<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> 

Foutafhandeling

De API retourneert HTTP-foutreacties om foutvoorwaarden aan te geven. Fouten zijn compatibel met OData. In de volgende tabel ziet u de foutcodes die kunnen worden geretourneerd naar een client:

HTTP-statuscode Beschrijving
401 Niet geautoriseerd
403 Verboden
408 Time-out aanvraag
500 Interne serverfout
503 Service niet beschikbaar

Filteren

PAM REST API-aanvragen kunnen filters bevatten om de eigenschappen op te geven die in het antwoord moeten worden opgenomen. De filtersyntaxis is gebaseerd op OData-expressies.

Filters kunnen een van de eigenschappen van PAM-aanvragen, PAM-rollen opgeven. of in behandeling zijnde PAM-aanvragen. Bijvoorbeeld: ExpirationTime, DisplayName of een andere geldige eigenschap van een PAM-aanvraag, PAM-rol of Aanvraag in behandeling.

De API ondersteunt de volgende operators in filterexpressies: And, Equal, NotEqual, GreaterThan, LessThan, GreaterThenOrEqueal en LessThanOrEqual.

De volgende voorbeeldaanvragen omvatten filters:

  • Deze aanvraag retourneert alle PAM-aanvragen tussen specifieke datums: 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'

  • Deze aanvraag retourneert de Pam-rol met de weergavenaam SQL-bestandstoegang: http://localhost:8086/api/pamresources/pamroles?$filter=DisplayName eq 'SQL File Access'