Sikkerhet

Sikkerhet

Kopier side

Sikkerhet i Workflow Transactional Email for Shopify Flow: hosting i EU, kryptering av e-postpålogging og butikkdata, og hvordan appen holdes oppdatert.

Workflow Transactional Email er utviklet og driftes av Code Creation Labs. Denne siden forklarer hva appen består av, hvor den kjører, hvordan dataene til nettbutikken din beskyttes og hvordan vi holder alt oppdatert. Den er skrevet for nettbutikkeiere og for alle som fyller ut et sikkerhetsspørreskjema. Hva appen lagrer og hvor lenge, finner du på Data, personvern og sikkerhet; de juridiske aspektene (personvernerklæring, databehandlingsavtale, underdatabehandlere) finner du på Juridisk informasjon og personvern.

Hva appen er bygget på

Lag Hva vi bruker
Applikasjonskode TypeScript på Node.js, en aktuell versjon med langsiktig støtte. Administrasjonssidene, layoutredigereren og tjenestene som kjører trinnene i Shopify Flow, er basert på én og samme kodebase.
Database og cache PostgreSQL (Google Cloud SQL) og Redis (Google Cloud Memorystore)
Webhotell Containere på Google Kubernetes Engine i Google Cloud-regionen europe-west1 (Belgia, EU). Databaser, hurtigbuffere, fillagring og applikasjonslogger er lokalisert i regionen.
Shopify-integrasjon Shopifys offisielle appbiblioteker, Shopify Flow-handlinger, Admin GraphQL-API-et for de valgfrie tillatelsene og Shopifys webhooks
Levering av e-post Postkassen du kobler til: din egen SMTP-server, Microsoft 365 eller Google Workspace. Appens egne varslings-e-poster til deg sendes via Amazon SES i Frankfurt.
Butikkfronten din Ingenting vises i temaet ditt eller i kassen.

Det finnes ikke PHP, WordPress, Java eller andre kjøringsmiljøer noe sted i tjenesten. Appen er oppført i Shopify App Store og har bestått Shopifys appvurdering, som omfatter Shopifys krav til sikkerhet og beskyttelse av kundedata.

Sikkerhetsmeldinger og om appene våre er berørt

Når det kommer nyheter om en sikkerhetsrisiko eller et angrep som involverer Shopify-apper, sjekker vi om dette gjelder noen av appene vi utvikler og registrerer resultatet her, slik at du kan finne svaret selv i stedet for å spørre.

Veiledning Når Våre apper Detaljer
PHP2Shell (CVE-2026-109618, CVE-2026-109619): ekstern kjøring av kode i PHP-motoren 21. oktober 2026 Ikke berørt. Ingen av appene våre inneholder PHP. Uttalelse
Kampanje for kapring av Shopify-kassen: Skript som ble injisert gjennom butikkfrontkoden til tredjepartsapper (Hulk Product Options, Selleasy, Swym Wishlist Plus; Qikify i juli) omdirigerte kunder til falske kassesider 10. til 20. oktober 2026 Ikke berørt. Ingen av appene våre var involvert, og ingen av dem kan plassere et slikt skript i butikken din. Uttalelse
Sikkerhetsoppdatering for Node.js (CVE-2026-111497 og ni andre CVE-er i Node.js-kjøringsmiljøet) 21. oktober 2026 Applied. Appene våre kjører på Node.js, så dette var noe som bekymret oss: Alle appene ble bygget på nytt med den oppdaterte versjonen (22.23.4) og har kjørt på denne i produksjonsmiljøet siden den uken. Du trenger ikke å gjøre noe. Slik holder vi appene oppdatert
Sikkerhetsoppdatering for nginx (CVE-2026-15176, CVE-2026-93479, CVE-2026-97205, CVE-2026-95101, CVE-2026-97629) 14. oktober 2026 Ikke berørt. nginx inngår ikke i appene våre, og alle appene kjører nå bak Google Clouds administrerte lastfordeler med Google Cloud Armor. Den tidligere brukte nginx-ingressen kunne heller ikke utnyttes: ingen av de fem problemene kan nås med den aktuelle konfigurasjonen (ingen aliaser eller omskrivninger, ingen server-side includes, ingen HTTP/3, TLS-sesjonsbilletter deaktivert). Uttalelse
Sikkerhetsbrudd hos sertifiseringsmyndigheten eMudhra (emSign): Nøklene til åtte mellomliggende sertifiseringsmyndigheter kan gjenopprettes; emSign ECC Root CA - G3 er ikke lenger pålitelig 20. oktober 2026 Ikke berørt. Ingen av våre systemer stoler på den mistrodde roten, ingen av våre sertifikater kommer fra eMudhra, og de offentlige Certificate Transparency-loggene viser ingen eMudhra-sertifikater for noen av våre domener. Uttalelse

Den samme tabellen for alle appene våre, sammen med de felles retningslinjene, finnes på Sikkerhet hos Code Creation Labs.

Hvordan opplysningene dine beskyttes

Under overføring. All kommunikasjon mellom nettleseren din, Shopify, e-postleverandøren din og appen skjer via TLS. Databasen og hurtigbufferen har ingen offentlig adresse: de er kun tilgjengelige fra vårt private nettverk.

I hvile. Alle databaser og fillagring er kryptert i hvile med nøkler som vi administrerer i Google Cloud KMS.

I tillegg kommer kryptering på feltnivå. Alt som kan brukes til å sende på vegne av deg, får et ekstra lag med beskyttelse: SMTP-brukernavn og -passord, Microsoft 365- og Google OAuth-tokens, hemmelighetene du lagrer, nettbutikkens Shopify-tilgangstoken og adressene på avmeldingslisten din. Hver verdi krypteres individuelt med AES-256-GCM under en egen nøkkel i Cloud KMS, med automatisk nøkkelrotasjon, og dekrypteres i minnet kun i det øyeblikket en handling utføres. Hver dekryptering av en beskyttet verdi registreres i et internt tilgangsspor. Hemmelige verdier blir fjernet fra handlingsloggen før den skrives, og returneres aldri av utvikler-API-et eller til Sidekick.

Hemmeligheter. Tjenestens API-påloggingsopplysninger og nøkler lagres i Google Secret Manager og hentes inn når tjenesten starter. De finnes verken i koden, i containerbildene eller i byggeprosessen.

Dataminimering. Appen installeres uten tilgang til butikkens data. Kundedata sendes kun til en e-postadresse fordi du overfører dem fra Shopify Flow. De fire valgfrie tillatelsene (å lese en metafeltfil for én ordre eller kunde, opprette en unik rabattkode) blir forespurt på stedet, innvilget gjennom Shopifys egen dialogboks og kan tilbakekalles når som helst. Se Tillatelser: hva appen har tilgang til i butikken din.

Ingen AI-trening. Dine e-poster, mottakere, vedlegg og Shopify-kundedata blir aldri brukt til å trene AI-modeller, verken av oss eller av noen andre. Den valgfrie AI-layoutassistenten kjører kun med din egen API-nøkkel og sender kun det oppsettet du redigerer. Du finner mer informasjon på Data, personvern og sikkerhet.

Hvem har tilgang til hva?

  • Tilgangstokener er låst til våre servere. Vi har aktivert Shopifys IP-tillatelsesliste for Admin API: Shopify godtar kun appens tilgangstokener fra vår egen utgående adresse og avviser dem fra alle andre steder, slik at et stjålet token er ubrukelig utenfor vår infrastruktur.
  • Tilgangstokener med utløpsdato. Appen bruker Shopifys offline-tilgangstokener med utløpsdato. Hvert token er gyldig i én time og fornyes automatisk, slik at et token som har lekket, slutter å fungere av seg selv.
  • Angitt nettverkstilgang. Appen angir i sin Shopify-konfigurasjon hvilke eksterne verter koden i butikkfronten, kassen og administrasjonsområdet kan ta kontakt med (Shopifys regler for nettverkstilgang), slik at Shopify kan oppdage forespørsler som ikke hører hjemme der.
  • En brannmur i front. Forespørsler når appen via Google Clouds administrerte globale lastfordeler med Google Cloud Armor, Googles brannmur for webapplikasjoner, som blokkerer kjente angripere og sjekker hver enkelt forespørsel før den når serverne våre.
  • Kun din butikk. Hver post inneholder opplysninger om hvilken butikk den tilhører, og hvert søk er begrenset til den butikken som ble autentisert. En butikk kan aldri lese eller endre en annen butikks oppsett, avsendere, hemmeligheter eller historikk.
  • Kun verifiserte forespørsler. Sider i Shopify-administrasjonsgrensesnittet autentiseres med Shopify-sesjonstokener. Shopify Flow-trinn og Shopifys egne webhooks verifiseres ved hjelp av Shopifys HMAC-signatur før dataene behandles, og et Shopify Flow-trinn som sendes to ganger, utføres kun én gang.
  • Rendert innhold. Oppsettet rendres på våre servere, og resultatet renses før det sendes: skript, hendelseshåndterere, «javascript:»-URL-er, iframes og skjemaelementer fjernes, slik at en verdi som overføres fra Shopify Flow, ikke kan bli til aktivt innhold i mottakerens innboks.
  • Utgående forespørsler. URL-adresser som appen kobler seg til på dine vegne - for handlingen HTTP Request, for vedlegg hentet fra en URL og for filer det refereres til via et metafelt - kontrolleres før tilkoblingen opprettes: loopback-, link-local-, sky-metadata- og private nettverksadresser avvises, også ved omdirigering. Antall omdirigeringer er begrenset, og svarene har størrelsesbegrensninger.
  • Vårt team. Tilgang til produksjonssystemene skjer utelukkende via Google Cloud IAM med individuelle kontoer. Interne vedlikeholdsverktøy er ikke tilgjengelige via internett.

Slik holder vi appen oppdatert

  • Shopifys sikkerhetskontroller for apper. Vi gjennomfører Shopifys sikkerhetskontroller for apper, den deterministiske skanningen og agentgjennomgangen, på alle appene vi utvikler, og gjentar dette ved hver utgivelse. De 37 kontrollene omfatter blant annet uautentiserte ruter, data som ikke er begrenset til en butikk, uverifiserte webhooks og app-proxyforespørsler, lagrede hemmeligheter, lekkede påloggingsopplysninger, usikker HTML og deaktiverte tilgangstokener med utløpsdato.
  • Hver endring blir skannet før den kan sendes ut. Pipelinen utfører typekontroller og linting, statisk applikasjonssikkerhetstesting (SAST), påvisning av hemmelige opplysninger, skanning av sårbarheter i avhengigheter og skanning av containerbilder. Vår utgivelsesstandard er null kjente sårbarheter i avhengighetene og i bildet.
  • Kjøringsmiljø og operativsystem. Containerbildet, Node.js på sin Alpine Linux-base, bygges på nytt ved hver utgivelse, slik at oppdateringer til kjøringsmiljøet og operativsystemet leveres kontinuerlig. Den administrerte Kubernetes-plattformen sørger for at de underliggende nodene alltid er oppdatert.
  • Shopify-plattformen. Vi følger med på Shopifys API-versjoner og sikkerhetsmeldingene for Shopifys appbiblioteker, og implementerer oppdateringer umiddelbart. Appen kjører på en oppdatert versjon av Admin API.
  • Sikkerhetsgjennomganger. Vi gjennomfører med jevne mellomrom en fullstendig intern gjennomgang av alle ruter, dataveier og databasespørsmål, senest i oktober 2026.
  • Overvåking. Tilgjengeligheten overvåkes døgnet rundt og publiseres på vår statusside, og feil utløser varsler til oss. Driftsloggene lagres i samme EU-region, oppbevares i maksimalt 30 dager og inneholder aldri påloggingsopplysninger eller hemmelige opplysninger.

Oppbevaring og sletting

  • Handlingsloggen, som registrerer hva som er sendt og dermed utgjør kundedata, slettes automatisk etter 30 dager.
  • Når du avinstallerer, slettes alt - oppsett, avsendere, hemmeligheter, historikk, listen over avmeldte brukere og opplastede filer - umiddelbart og uten mulighet for gjenoppretting.
  • Shopifys obligatoriske personvernforespørsler (customers/data_request, customers/redact og shop/redact) behandles automatisk innenfor de tidsfristene Shopify fastsetter, inkludert når en kunde blir ført opp på avmeldingslisten.
  • En fullstendig oversikt over hva som lagres, finnes på Data, personvern og sikkerhet. Underleverandører og oppbevaringsfrister er beskrevet i personvernerklæringen. En signert databehandlingsavtale kan rekvireres på workflow-transactional-email.app/dpa.

Rapportere et sikkerhetsproblem

Hvis du mener at du har oppdaget en sikkerhetsrisiko, eller hvis du trenger å få utfylt et sikkerhetsspørreskjema, kan du sende en e-post til support@codecreationlabs.com. Sikkerhetsrapporter blir behandlet og besvart med høy prioritet.