33 lines
841 B
TypeScript
33 lines
841 B
TypeScript
import type { Request } from "caido:utils";
|
|
import { TokenLeakCheck } from "./tokenLeakCheck";
|
|
|
|
export class NonceCheckController{
|
|
/**
|
|
* 응답이 OIDC(OpenID Connect) 플로우인지 확인하는 메서드
|
|
*/
|
|
|
|
public static isOidcFlow(req: Request): boolean {
|
|
if(TokenLeakCheck.extractIdToken(req)) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
|
|
public static isNonceCheckRequest(req: Request): boolean {
|
|
const id_token = decodeIdToken(req);
|
|
|
|
// 1. nonce 파라미터가 포함된 요청인지 확인
|
|
if (id_token.includes("nonce=")) {
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function decodeIdToken(req: Request): string {
|
|
// Implement actual decoding logic here. For now, return an empty string or mock value.
|
|
return "";
|
|
}
|
|
|