Skip to content

Forhindre at sluttbrukersystem laster opp data til datatype som skal inneholde signaturobjektet #656

@veronikaandersen

Description

@veronikaandersen

Description

https://docs.altinn.studio//nb/app/development/process/tasks/signing/#konfigurere-hvor-signaturobjektet-skal-lagres
Hvis man har en signerings task, må man ha en datatype hvor signaturobjektet skal lagres. Denne datatypen skiller seg ikke fra andre datatyper, så sluttbrukersystem har mulighet til å laste opp data på denne datatypen. Det feiler om man prøver å laste opp noe annet en det som er tillatt i allowedContentTypes, men man kan lett komme seg rundt det om man sier at det man laster opp er av en type som er tillatt i header - content-type og content-disposition. Da kan man lastet opp hva man vi…

Om signering task er siste prosessteg før task end:

TT02 instans: https://dibk.apps.tt02.altinn.no/dibk/ig-v3/instances/50293843/1482152c-80ac-4a35-8e91-e1d402b25b0f

Steg for steg - fra sluttbrukersystem sin side..

  • Opprett instans
  • Last opp data til datatypen Signatur
    • Datainnhold xml, eller hva som helst..
    • Content-type: application/json
    • Content-Disposition: attachment; filename=signatur.json
  • Lastet opp andre data som er påkrevd for appen
  • Process next, uten action sign → 403 forbidden.
  • Process next med action sign → Ok, Appen går til process end.

Resultat av dette er at jeg har en instans som har gått til process end med to signaturobjekter, selv om det bare skal være tillatt med et. Det ene signaturobjektet inneholder i tillegg en xml...

image

image

image

image

Ønsker om endring

  1. Vi må forhindre at sluttbruker har skrive-tilgang til signatur datatypen.

Hva vi kan gjøre:

... Men dette er kanskje noe Altinn bør ta seg av, så vi slipper å måtte konfigurere dette for alle apper som har signering?

  1. Ved opplasting av data må det sjekkes at innholdet er i henhold til det man angir i header content-type. Her har vi forslag til løsning: MIME-type validering - Uploaded file extension samme som filename extension fileanalyzers-lib-dotnet#19

En ting jeg ikke har testet, men som jeg mistenker går, er om man har et signering task og neste steg ikke er end. Da vil man kanskje kunne gjøre en PUT på datatypen signering og erstatte signaturen med noe annet?....

Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions