Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De functie DecryptMessage (Kerberos) ontsleutelt een bericht. Sommige pakketten versleutelen en ontsleutelen berichten niet, maar voeren een integriteits-hash uit en controleren.
Opmerking
EncryptMessage (Kerberos) en DecryptMessage (Kerberos) kunnen tegelijkertijd worden aangeroepen vanuit twee verschillende threads in één SSPI-context ( Security Support Provider Interface ) als één thread wordt versleuteld en de andere wordt ontsleuteld. Als meer dan één thread wordt versleuteld of meer dan één thread ontsleutelt, moet elke thread een unieke context verkrijgen.
Syntaxis
SECURITY_STATUS SEC_Entry DecryptMessage(
_In_ PCtxtHandle phContext,
_Inout_ PSecBufferDesc pMessage,
_In_ ULONG MessageSeqNo,
_Out_ PULONG pfQOP
);
Parameterwaarden
phContext [in]
Een ingang voor de beveiligingscontext die moet worden gebruikt om het bericht te ontsleutelen.
pMessage [in, uit]
Een aanwijzer naar een SecBufferDesc-structuur . Bij invoer verwijst de structuur naar een of meer SecBuffer-structuren die van het type SECBUFFER_DATA kunnen zijn. De buffer bevat het versleutelde bericht. Het versleutelde bericht wordt op zijn plaats ontsleuteld, waarbij de oorspronkelijke inhoud van de buffer wordt overschreven.
MessageSeqNo [in]
Het volgnummer dat wordt verwacht door de transporttoepassing, indien van toepassing. Als de transporttoepassing geen volgnummers onderhoudt, moet deze parameter worden ingesteld op nul.
pfQOP [uit]
Een aanwijzer naar een variabele van het type ULONG die pakketspecifieke vlaggen ontvangt die de kwaliteit van de beveiliging aangeven.
Deze parameter kan de volgende vlag zijn.
| Waarde | Betekenis |
|---|---|
| SECQOP_WRAP_NO_ENCRYPT | hij was niet versleuteld, maar er werd een koptekst of trailer geproduceerd. |
Opmerking
KERB_WRAP_NO_ENCRYPT heeft dezelfde waarde en dezelfde betekenis.
Retourwaarde
Als de functie controleert of het bericht in de juiste volgorde is ontvangen, retourneert de functie SEC_E_OK.
Als de functie het bericht niet kan ontsleutelen, wordt een van de volgende foutcodes geretourneerd.
| Retourcode | Beschrijving |
|---|---|
| SEC_E_INCOMPLETE_MESSAGE | De gegevens in de invoerbuffer zijn onvolledig. De applicatie moet meer gegevens van de server lezen en DecryptMessage (Kerberos) opnieuw aanroepen. |
| SEC_E_OUT_OF_SEQUENCE | Het bericht is niet in de juiste volgorde ontvangen. |
Opmerkingen
Soms leest een toepassing gegevens van de externe partij, probeert deze te ontsleutelen met behulp van DecryptMessage (Kerberos) en ontdekt dat DecryptMessage (Kerberos) is geslaagd, maar de uitvoerbuffers leeg zijn. Dit is normaal gedrag en toepassingen moeten ermee kunnen omgaan.
Zie SSPI/Kerberos Interoperability met GSSAPI voor meer informatie over samenwerking met GSSAPI.
Windows XP: Deze functie werd ook wel UnsealMessage genoemd. Toepassingen mogen nu alleen DecryptMessage (Kerberos) gebruiken.
Vereisten
| Voorwaarde | Waarde |
|---|---|
| Minimaal ondersteunde client | Windows XP [alleen desktop-apps] |
| Minimaal ondersteunde server | Windows Server 2003 [alleen desktop-apps] |
| Koptekst | Sspi.h (inclusief Security.h) |
| Bibliotheek | Secur32.lib |
| DLL | Secur32.dll |