Cześć,
W nawiązaniu do mojego wczorajszego posta dotyczącego problemów z integracją interaktywną FA(3) w środowisku ksef-test – dzięki @Dzyszla przeszedłem krok dalej ......... Ale niestety kolejny problem z tokenem:
Poniżej aktualny stan:
ETAP 1 – /auth/challenge
Działa poprawnie (200 OK).
ETAP 2 – szyfrowanie tokenu
Szyfrowanie RSA-OAEP-SHA256 jest poprawne – zaszyfrowany token przyjęty przez usługę (brak błędów w KROKU 3).
using RSA rsa = LoadRsaPublicKey(PEM_FILE);
string toEncrypt = $"{TOKEN_KSEF}|{timestampMs}";
byte[] tokenBytes = Encoding.UTF8.GetBytes(toEncrypt);
string encryptedToken = Convert.ToBase64String(
rsa.Encrypt(tokenBytes, RSAEncryptionPadding.OaepSHA256)
);
ETAP 3 – /auth/ksef-token
Odpowiedź jest 202 Accepted.
Zwracany jest referenceNumber oraz JWT (authenticationToken), który wygląda poprawnie.
ETAP 4 – polling /auth/{referenceNumber}
I tutaj pojawia się problem — wcześniej dostawałem 401 Unauthorized, ale obecnie wykonałem testy ponownie i teraz polling zwraca:
status 450
"Uwierzytelnianie zakończone niepowodzeniem z powodu błędnego tokenu"
details: "Invalid token encryption"
Czyli nie problem z nagłówkiem — ale z samym tokenem wejściowym (tym, który szyfruję w KROKU 2).
Dodatkowo końcowe wywołanie:
GET /auth/ksef-token/{referenceNumber}
zwraca:
HTTP 404 NotFound (puste body) i kończy się błędem parsera JSON po stronie aplikacji.
Token, którego obecnie używam, został wygenerowany w środowisku testowym, w sekcji:
Tokeny → Generuj token z zaznaczeniem wszystkich możliwych uprawnień.
Przykładowa wartość tokenu:
20251117-EC-385DF35000-17B4EC52F8-00|nip-5840251149|faa04d9658aa413a81340b0a7063e968a027abb59644433c871df8f7c14533d6
Pytanie kluczowe:
Czy tego typu token nadaje się do wykorzystania jako TOKEN_Z_DOSTĘPU w /auth/ksef-token?
Czy endpoint Token Authentication wymaga innego typu tokenu ? Al podpowiada mi, że w moim panelu testowym aplikacji MF powinna być zakładka „Dostęp zewnętrzny” i tak niby się taki token generuje, ale nie mam takiej zakładki.
Z góry dziękuje za pomoc
Michał