Bonsoir a tous
JE dois récupérer un ticket kerberos pour s'authentiifier à un service , le resultat est stocké dans un SecBuffer que j'arrive pas à lire :/
le resultat de ces 2 appels est Ok .. Mais a la lecture du Token je trouve des caractéres illisibles :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 SecBuffer Token; SecBufferDesc SBD; SBD.ulVersion=SECBUFFER_VERSION; SBD.cBuffers=1; SBD.pBuffers=&Token; Token.BufferType = SECBUFFER_TOKEN; Token.cbBuffer = 0; Token.pvBuffer = NULL; ss = AcquireCredentialsHandle(NULL, "Kerberos", SECPKG_CRED_OUTBOUND, NULL, NULL, NULL, NULL, &CH, &TS); ss = InitializeSecurityContext(&CH, NULL, "HTTP/target.com", ISC_REQ_ALLOCATE_MEMORY | ISC_REQ_CONFIDENTIALITY | ISC_REQ_CONNECTION |ISC_REQ_REPLAY_DETECT |ISC_REQ_SEQUENCE_DETECT , 0, SECURITY_NETWORK_DREP, NULL, 0, &CtxtH, &SBD, &CA, NULL);
Le Token attendu est une suite de caractéres alphanumériques base64 ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 pbMessage = (BYTE *)(Token.pvBuffer); cbMessage = Token.cbBuffer; char * to = (char*)pbMessage;
Auriez vous une idée ?
Partager