gx-l |
| luismiyashita | |
Boa tarde. Tenho este código GX &PrivateClaims.SetClaim("sub","1234567890") &PrivateClaims.SetClaim("name","John Doe") &PrivateClaims.SetClaim("iat","1516239022") &KeyForm = 'C4EBDFB24A081E17029C8A919605A3C72950DA2489B463AC232BC828AD7934DD' &JwtOptions.SetSecret(&KeyForm) &Assinatura = &JwtCreator.DoCreate(JWTAlgorithm.HS256,&PrivateClaims,&JwtOptions) Este são os dados gerados. header: {"alg":"HS256","typ":"JWT"} Payload: {"sub":"1234567890","name":"John Doe","iat":"1516239022"} Assinatura: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoiMTUxNjIzOTAyMiJ9.m871iPW-NkmNAV74G6KefftKonb1df00frV3m3FfRBc Utilizo as mesmas informações no site JSON Web Tokens - jwt.io<https://jwt.io/>, a assinatura não confere Assinatura gerada pelo site. eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoiMTUxNjIzOTAyMiJ9.C1slqlMgmPCiHCSAwrPzVK2mOuLlSVglW9Y19rScsoc A conversão do base64 estão corretas. O problema esta na geração da assinatura. O que há de errado no meu código?? Porque não posso utilizar qualquer valor na KEY (Ej. Minhakeyparaassinarjwt) Atenciosamente Luis Miyashita ----------------------------------------- Para Suscribirse/Desuscribirse: http://www.gxtechnical.com/cgi-bin/hforum.exe?2,3,30,1 Por consultas owner-gx-l@gxtech.com.uy |
|
|
| | |
luismiyashita | |
Hola Pablo.
Ya consegui resolver el problema.
El la wiki, la key tiene que ser hexadecimal, entonces cree uma key hexa
&Key = 'C4EBDFB24A081E17029C8A919605A3C72950DA2489B463AC232BC828AD7934DD'
&JwtOptions.SetSecret(&Key)
Cuando el correcto es
&Key = 'C4EBDFB24A081E17029C8A919605A3C72950DA2489B463AC232BC828AD7934DD'
&KeyForm = &HexaEncoder.ToHexa(&KeyForm)
&JwtOptions.SetSecret(&Key)
Un duda.
Si tengo un payload demasiado grande, tengo que añadir variable por variable??
No tiene algo como
&PrivateClaims.FromJson(&SDT.ToJson) o
&PrivateClaims.RAWText = &JsonTXT
{
"UngCod": 0,
"CtaNum": "",
"CtaMovDigCta": "",
"CtaMovNumPor": "",
"Caminho": "",
"EncSobTrnTxt": "",
"Simbolo": "",
"EncSobTrn": "",
"CtaBolDtaVct": 0,
"CtaBolLinDig": "",
"CtaBolDtaVctAux": "0000-00-00",
"CtaBolVlr": "",
"CtaBolDtaDoc": "0000-00-00",
"CtaBolNroDoc": "",
"CtaBolEspDoc": "",
"CtaBolAce": "",
"CtaBolUsoBco": "",
"CtaBolCodCrt": "",
"CtaBolMoe": "",
"CtaBolCipBco": "",
"CtaBolCed": "",
"CtaBolNosNum": "",
"CtaBolCodBar": "",
"CtaBolCodBco": 0,
"CtaBolAgeBco": 0,
"CtaBolCcoBco": 0,
"EmpNom": "",
"CADBcoBltCedEnd": "",
"IDCLIEXT": "",
"CtaNomCliTit": "",
"CtaHisEndRes": "",
"CplEndCli": "",
"EndCli": "",
"OfertaTotal": "",
"CtaOfeFinDtaVctExt": "0000-00-00",
"ValPar": "",
"linhamsg": "",
"LinhamsgF": "",
"NumCta": "",
"CFISldPtsAcu": 0,
"CFISldPtsMes": 0,
"CFISldAtuPts": 0,
"CFISldDtaVldBnsPen": "0000-00-00T00:00:00",
"CFISldBnsPen": 0,
"CFISldDtaVldPtsPrx": "0000-00-00T00:00:00",
"CFISldPtsExp": 0,
"NumeroSorte": "",
"PSIIndUtiCfi": "",
"ExisteMassivo": 0,
"LocPag": "",
"BdaCod": 0,
"CtaOfeCusEfeMen": 0,
"Codigo": "",
"VisLojFat": false,
"VisLojCod": false,
"VisEncFat": false,
"VisCodBar": false,
"CtaNumPlsTitAti": "",
"NomCliTitCPF": "",
"FATARQ_TIPCABEC": "",
"VisDtaVct": false,
"VisOnlLim": false,
"CtaExtTxaJroExt": 0,
"CtaIndTipPes": "",
"CtaNumCpf": "",
"CtaHisEndResBai": "",
"CtaHisEndResCep": "",
"CtaHisEndResEst": "",
"CtaHisEndResCid": "",
"SdtOfeFinMult": {
"SdtOfeFinMultItem": [
{
"CtaOfeFinQtdPre": 0,
"CtaOfeFinVlrPre": "0.00",
"CtaOfeCusEfeMen": 0,
"CtaOfeVlrEntFin": 0
}
]
},
"SdtPrdSorteio": [
{
"CtaNum": "",
"UNGCod": 0,
"ProCod": 0,
"CtaProSorNum": 0,
"CtaProSorSer": 0,
"CtaProSorDta": 0,
"PrdDsc": ""
}
]
}
Un saludo.
Luis Miyashita. |
|
|
|
|
Back to gx-l |
|