SlideShare a Scribd company logo
1 of 19
Download to read offline
Analityka i marketing w
bezpiecznych serwisach
bankowych
Case Study FinAi.pl
1. Co zamiast Google Analytics? - Jak zbudowaliśmy własny
system zbierania telemetrii?
2. Śledzenie konwersji i tworzenie list remarketingowych
bez JavaScript
3. 3rd party JavaScript
4. Jak zbudować własny Tag Manager?
5. RODO i tajemnica bankowa
Bezpieczeństwo w analityce i marketingu
Główne problemy:
• Dane osobowe
• 3rd party JavaScript
• Brak kontroli i dostępu do danych – np. Google Analytics
Alternatywy dla Google Analytics
Naprościej:
• Matomo (dawniej Piwik) - https://matomo.org/
• Open Web Analytics - http://www.openwebanalytics.com/
• Microsoft Application Insights – słabe dla marketingu
Lvl Hard:
• Własna biblioteka JS zbierająca telemetrię
• Mikroserwis przyjmujący eventy / Kafka / Azure EventHub/ AWS
Kinesis
• ETL przetwarzający eventy – Event Sourcing!
• Hurtownia – SQL Server, Postgres, MySql
Marketing – pixle konwersji i remarketing
Google Ads – w nowym widoku tylko JS!
<!-- Event snippet for TestRegistration conversion page -->
<script>
gtag('event', 'conversion', {'send_to': 'AW-
846677157/O2E9CMWC_38QpIndkwM'});
</script>
Ale można tak:
<img src=
„//www.googleadservices.com/pagead/conversion/846677157/?label=O2E9
CMWC_38QpIndkwM&guid=ON&script=0&userId={USERID}”>
Marketing – pixle konwersji i remarketing
Google Ads – w nowym widoku tylko JS!
<script>
gtag('event', 'page_view', {
'send_to': 'AW-846677156’,
'user_id': 'replace with value'
});
</script>
Ale można tak:
//googleads.g.doubleclick.net/pagead/viewthroughconversion/84667715
6/?guid=ON&script=0&userId={{UserId}}
Marketing – Facebook Pixel
<img height="1" width="1"
style="display:none"
src=
"https://www.facebook.com
/tr?id=948336325308715&ev
=PageView&noscript=1"
/>
Marketing – DoubleClick Floodlight
Marketing – DoubleClick Floodlight
3rd party JavaScript – zagrożenia
1. Błędy w kodzie, kolizje nazw zmiennych globalnych
2. Wykonanie złośliwego kodu na stronie
3. Przechwycenie danych – wyświetlanych jak i wprowadzanych
na stronie
3rd party JavaScript– skrypty analityczne
• gtag.js
• gtm.js
• analytics.js
• fbevents.js
• Duże firmy - małe ryzyko, ale wysyłamy do Google, Facebook itp
nasze dane.
3rd party JavaScript
• Marketing Automation (Mailchimp, Synerise, Emarsys itp.)
• Livechat
• UWAGA! Duże ryzyko wstrzyknięcia kodu z bugiem.
• Pamiętać o możliwości szybkiego zdjęcia tego kodu z frontu
(np. poprzez GTM)
3rd party JavaScript - implementacja
Skrypt który pobiera skrypt - standard
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-XXXXX-Y', 'auto');
ga('send', 'pageview');
</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=GA_TRACKING_ID"></script>
<script src="https://analytics.vendor.com/v1.1/script.js"
integrity="sha384-MBO5IDfYaE6c6Aao94oZrIOiC7CGiSNE64QUbHNPhzk8Xhm0djE6QqTpL0HzTUxk"
crossorigin="anonymous"></script>
3rd party JavaScript - implementacja
Skrypt serwowany samemu:
• Code review
• Self-hosted
• Kontrolujemy ryzyko downtime
• W sumie to prościej użyć <script src=„…” integrity=„…”>
3rd party JavaScript - sandboxing
Skrypt serwowany w sandbox z iframe:
<iframe src="https://my-website.com/analytics.html"
sandbox="allow-same-origin allow-scripts"></iframe>
Źródło:
https://www.owasp.org/index.php/3rd_Party_Javascript_
Management_Cheat_Sheet
my-website.com/index.html
IFRAME:
my-website.com/analytics.html
ifrElement.contentWindow.postMessage
window.addEventListener('message')
window.addEventListener('message’)
window.parent.postMessage
Finai Tag Manager
Tag Manager składa się z:
1. Frontu do konfiguracji
2. Serwera serwującego konfigurację do przeglądarek
3. Skryptu JS na stronie interpretującego konfigurację, uzupełniającego
placeholdery/zmienne
Ad. 1: JSON
Ad. 2: CDN
Ad. 3: var script = document.createElement("script");
var scriptText = document.createTextNode(js);
script.appendChild(scriptText);
document.body.appendChild(script);
Finai Tag Manager
[{
"Description": "DCM KredytomatRegistration",
"type": "pixel",
"uriTemplate": "https://ad.doubleclick.net/ddm/activity/...",
"trigger": "PageView",
"path": "/profile",
"isEnabled": true
},
{
"Description": "GA virtual page view",
"type": "js",
"jsTemplate": "(function(){var img = document.createElement('img');...",
"trigger": "PageView",
"path": null,
"isEnabled": true
}]
RODO, dane osobowe, tajemnica bankowa
• W bankowości wszystko jest trudniejsze
• Dane osobowe lub tajemnica bankowa mogą być wszędzie
• W URLu też!
Koniec!

More Related Content

Similar to Jacek Kowalski - Analityka i marketing w bezpiecznych serwisach bankowych

Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...
Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...
Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...Bluerank
 
Wyklad inauguracyjny
Wyklad inauguracyjnyWyklad inauguracyjny
Wyklad inauguracyjnyRadoslaw Kita
 
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...Logicaltrust pl
 
Machine learning vs big data od pomysłu do produkcji - Bartłomiej Twardowsk...
Machine learning vs big data   od pomysłu do produkcji - Bartłomiej Twardowsk...Machine learning vs big data   od pomysłu do produkcji - Bartłomiej Twardowsk...
Machine learning vs big data od pomysłu do produkcji - Bartłomiej Twardowsk...Evention
 
Prezentacja z Big Data Tech 2016: Machine Learning vs Big Data
Prezentacja z Big Data Tech 2016: Machine Learning vs Big DataPrezentacja z Big Data Tech 2016: Machine Learning vs Big Data
Prezentacja z Big Data Tech 2016: Machine Learning vs Big DataBartlomiej Twardowski
 
Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...
Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...
Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...Mateusz Muryjas
 
Meandry Analityki (SEMcamp, 24.02.2010)
Meandry Analityki (SEMcamp, 24.02.2010)Meandry Analityki (SEMcamp, 24.02.2010)
Meandry Analityki (SEMcamp, 24.02.2010)rdrozd
 
Greasemonkey na bootstrap.pl 200803
Greasemonkey na bootstrap.pl 200803Greasemonkey na bootstrap.pl 200803
Greasemonkey na bootstrap.pl 200803Marcin Kaszynski
 
[CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego
[CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego [CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego
[CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego PROIDEA
 
[PL] Analiza logów w SEO | SEO Meetup Wrocław
[PL] Analiza logów w SEO | SEO Meetup Wrocław[PL] Analiza logów w SEO | SEO Meetup Wrocław
[PL] Analiza logów w SEO | SEO Meetup WrocławTomasz Rudzki
 
StreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchuStreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchuWlodek Bielski
 
Growth Hacking dla e-Commerce
Growth Hacking dla e-CommerceGrowth Hacking dla e-Commerce
Growth Hacking dla e-CommerceDivante
 
Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...
Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...
Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...Stowarzyszenie Content Marketing Polska
 
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...Logicaltrust pl
 
Zawód: analityk. Google Analytics i nie tylko
Zawód: analityk. Google Analytics i nie tylkoZawód: analityk. Google Analytics i nie tylko
Zawód: analityk. Google Analytics i nie tylkoKrzysztof Marzec
 
Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe n...
Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe  n...Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe  n...
Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe n...Marcin Kowalik
 
infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...
infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...
infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...Infoshare
 
[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu
[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu
[Confidence 2016] Red Team - najlepszy przyjaciel Blue TeamuPiotr Kaźmierczak
 

Similar to Jacek Kowalski - Analityka i marketing w bezpiecznych serwisach bankowych (20)

Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...
Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...
Wykorzystanie danych o użytkowniku do personalizacji procesu zakupowego ::: M...
 
BlackHat Analytics
BlackHat AnalyticsBlackHat Analytics
BlackHat Analytics
 
Agregacja 17 źródeł danych jak wdrożyć i nie zwariować
Agregacja 17 źródeł danych jak wdrożyć i nie zwariowaćAgregacja 17 źródeł danych jak wdrożyć i nie zwariować
Agregacja 17 źródeł danych jak wdrożyć i nie zwariować
 
Wyklad inauguracyjny
Wyklad inauguracyjnyWyklad inauguracyjny
Wyklad inauguracyjny
 
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
 
Machine learning vs big data od pomysłu do produkcji - Bartłomiej Twardowsk...
Machine learning vs big data   od pomysłu do produkcji - Bartłomiej Twardowsk...Machine learning vs big data   od pomysłu do produkcji - Bartłomiej Twardowsk...
Machine learning vs big data od pomysłu do produkcji - Bartłomiej Twardowsk...
 
Prezentacja z Big Data Tech 2016: Machine Learning vs Big Data
Prezentacja z Big Data Tech 2016: Machine Learning vs Big DataPrezentacja z Big Data Tech 2016: Machine Learning vs Big Data
Prezentacja z Big Data Tech 2016: Machine Learning vs Big Data
 
Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...
Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...
Analityka w startupie - dlaczego musisz o niej pamiętać od samego początku? -...
 
Meandry Analityki (SEMcamp, 24.02.2010)
Meandry Analityki (SEMcamp, 24.02.2010)Meandry Analityki (SEMcamp, 24.02.2010)
Meandry Analityki (SEMcamp, 24.02.2010)
 
Greasemonkey na bootstrap.pl 200803
Greasemonkey na bootstrap.pl 200803Greasemonkey na bootstrap.pl 200803
Greasemonkey na bootstrap.pl 200803
 
[CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego
[CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego [CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego
[CONFidence 2016] Artur Kalinowski - Wyciek danych z pespektywy atakującego
 
[PL] Analiza logów w SEO | SEO Meetup Wrocław
[PL] Analiza logów w SEO | SEO Meetup Wrocław[PL] Analiza logów w SEO | SEO Meetup Wrocław
[PL] Analiza logów w SEO | SEO Meetup Wrocław
 
StreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchuStreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchu
 
Growth Hacking dla e-Commerce
Growth Hacking dla e-CommerceGrowth Hacking dla e-Commerce
Growth Hacking dla e-Commerce
 
Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...
Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...
Marek Broda_ MArketing automation przez 30 pierwszych dni_Power of Content MA...
 
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wybrane studium prz...
 
Zawód: analityk. Google Analytics i nie tylko
Zawód: analityk. Google Analytics i nie tylkoZawód: analityk. Google Analytics i nie tylko
Zawód: analityk. Google Analytics i nie tylko
 
Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe n...
Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe  n...Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe  n...
Poradnik sieci Affiliando - optymalizacja landing page - czesc 6 - Darmowe n...
 
infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...
infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...
infoShare AI Roadshow 2018 - Barbara Leśniarek (Elitmind) - ”Łapać złodzieja!...
 
[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu
[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu
[Confidence 2016] Red Team - najlepszy przyjaciel Blue Teamu
 

More from Web Analytics Wednesday Warsaw

Dorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowej
Dorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowejDorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowej
Dorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowejWeb Analytics Wednesday Warsaw
 
Maciej Biegański - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyć
Maciej Biegański  - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyćMaciej Biegański  - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyć
Maciej Biegański - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyćWeb Analytics Wednesday Warsaw
 
Wykorzystanie danych z systemów analitycznych w sprzedaży online
Wykorzystanie danych z systemów analitycznych w sprzedaży onlineWykorzystanie danych z systemów analitycznych w sprzedaży online
Wykorzystanie danych z systemów analitycznych w sprzedaży onlineWeb Analytics Wednesday Warsaw
 
Podejmowanie świadomych decyzji biznesowych w oparciu o dane
Podejmowanie świadomych decyzji biznesowych w oparciu o danePodejmowanie świadomych decyzji biznesowych w oparciu o dane
Podejmowanie świadomych decyzji biznesowych w oparciu o daneWeb Analytics Wednesday Warsaw
 
Piwik – największa platforma analityczna open source. Zastosowanie w środowis...
Piwik – największa platforma analityczna open source. Zastosowanie w środowis...Piwik – największa platforma analityczna open source. Zastosowanie w środowis...
Piwik – największa platforma analityczna open source. Zastosowanie w środowis...Web Analytics Wednesday Warsaw
 
Vi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowol
Vi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowolVi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowol
Vi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowolWeb Analytics Wednesday Warsaw
 
Analityka 2.0, czyli jak mierzyć i optymalizować marketing mix
Analityka 2.0, czyli jak mierzyć i optymalizować marketing mixAnalityka 2.0, czyli jak mierzyć i optymalizować marketing mix
Analityka 2.0, czyli jak mierzyć i optymalizować marketing mixWeb Analytics Wednesday Warsaw
 

More from Web Analytics Wednesday Warsaw (16)

Analityk-Nomada czyli pracuj skąd chcesz!
Analityk-Nomada czyli pracuj skąd chcesz!Analityk-Nomada czyli pracuj skąd chcesz!
Analityk-Nomada czyli pracuj skąd chcesz!
 
Dorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowej
Dorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowejDorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowej
Dorota jałocha - Shiny like a staR - O wykorzystaniu r w analityce internetowej
 
Maciej Biegański - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyć
Maciej Biegański  - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyćMaciej Biegański  - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyć
Maciej Biegański - Skoro nowa aplikacja jest taka dobra, to po co ją mierzyć
 
7 sins of digital analytics
7 sins of digital analytics7 sins of digital analytics
7 sins of digital analytics
 
Wykorzystanie danych z systemów analitycznych w sprzedaży online
Wykorzystanie danych z systemów analitycznych w sprzedaży onlineWykorzystanie danych z systemów analitycznych w sprzedaży online
Wykorzystanie danych z systemów analitycznych w sprzedaży online
 
Guerilla usability testing
Guerilla usability testingGuerilla usability testing
Guerilla usability testing
 
Podejmowanie świadomych decyzji biznesowych w oparciu o dane
Podejmowanie świadomych decyzji biznesowych w oparciu o danePodejmowanie świadomych decyzji biznesowych w oparciu o dane
Podejmowanie świadomych decyzji biznesowych w oparciu o dane
 
Content w służbie konwersji
Content w służbie konwersjiContent w służbie konwersji
Content w służbie konwersji
 
Piwik – największa platforma analityczna open source. Zastosowanie w środowis...
Piwik – największa platforma analityczna open source. Zastosowanie w środowis...Piwik – największa platforma analityczna open source. Zastosowanie w środowis...
Piwik – największa platforma analityczna open source. Zastosowanie w środowis...
 
Vi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowol
Vi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowolVi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowol
Vi edycja web analytics wednesdays jak mierzyć niemierzalne marcin kowol
 
Jak mierzyć niemierzalne?
Jak mierzyć niemierzalne? Jak mierzyć niemierzalne?
Jak mierzyć niemierzalne?
 
User Centric Research
User Centric ResearchUser Centric Research
User Centric Research
 
Site Search Analytics (SSA)
Site Search Analytics (SSA)Site Search Analytics (SSA)
Site Search Analytics (SSA)
 
Usability Tools
Usability Tools Usability Tools
Usability Tools
 
Analityka 2.0, czyli jak mierzyć i optymalizować marketing mix
Analityka 2.0, czyli jak mierzyć i optymalizować marketing mixAnalityka 2.0, czyli jak mierzyć i optymalizować marketing mix
Analityka 2.0, czyli jak mierzyć i optymalizować marketing mix
 
Fokus
FokusFokus
Fokus
 

Jacek Kowalski - Analityka i marketing w bezpiecznych serwisach bankowych

  • 1. Analityka i marketing w bezpiecznych serwisach bankowych Case Study FinAi.pl
  • 2. 1. Co zamiast Google Analytics? - Jak zbudowaliśmy własny system zbierania telemetrii? 2. Śledzenie konwersji i tworzenie list remarketingowych bez JavaScript 3. 3rd party JavaScript 4. Jak zbudować własny Tag Manager? 5. RODO i tajemnica bankowa
  • 3. Bezpieczeństwo w analityce i marketingu Główne problemy: • Dane osobowe • 3rd party JavaScript • Brak kontroli i dostępu do danych – np. Google Analytics
  • 4. Alternatywy dla Google Analytics Naprościej: • Matomo (dawniej Piwik) - https://matomo.org/ • Open Web Analytics - http://www.openwebanalytics.com/ • Microsoft Application Insights – słabe dla marketingu Lvl Hard: • Własna biblioteka JS zbierająca telemetrię • Mikroserwis przyjmujący eventy / Kafka / Azure EventHub/ AWS Kinesis • ETL przetwarzający eventy – Event Sourcing! • Hurtownia – SQL Server, Postgres, MySql
  • 5. Marketing – pixle konwersji i remarketing Google Ads – w nowym widoku tylko JS! <!-- Event snippet for TestRegistration conversion page --> <script> gtag('event', 'conversion', {'send_to': 'AW- 846677157/O2E9CMWC_38QpIndkwM'}); </script> Ale można tak: <img src= „//www.googleadservices.com/pagead/conversion/846677157/?label=O2E9 CMWC_38QpIndkwM&guid=ON&script=0&userId={USERID}”>
  • 6. Marketing – pixle konwersji i remarketing Google Ads – w nowym widoku tylko JS! <script> gtag('event', 'page_view', { 'send_to': 'AW-846677156’, 'user_id': 'replace with value' }); </script> Ale można tak: //googleads.g.doubleclick.net/pagead/viewthroughconversion/84667715 6/?guid=ON&script=0&userId={{UserId}}
  • 7. Marketing – Facebook Pixel <img height="1" width="1" style="display:none" src= "https://www.facebook.com /tr?id=948336325308715&ev =PageView&noscript=1" />
  • 10. 3rd party JavaScript – zagrożenia 1. Błędy w kodzie, kolizje nazw zmiennych globalnych 2. Wykonanie złośliwego kodu na stronie 3. Przechwycenie danych – wyświetlanych jak i wprowadzanych na stronie
  • 11. 3rd party JavaScript– skrypty analityczne • gtag.js • gtm.js • analytics.js • fbevents.js • Duże firmy - małe ryzyko, ale wysyłamy do Google, Facebook itp nasze dane.
  • 12. 3rd party JavaScript • Marketing Automation (Mailchimp, Synerise, Emarsys itp.) • Livechat • UWAGA! Duże ryzyko wstrzyknięcia kodu z bugiem. • Pamiętać o możliwości szybkiego zdjęcia tego kodu z frontu (np. poprzez GTM)
  • 13. 3rd party JavaScript - implementacja Skrypt który pobiera skrypt - standard <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-XXXXX-Y', 'auto'); ga('send', 'pageview'); </script> <script async src="https://www.googletagmanager.com/gtag/js?id=GA_TRACKING_ID"></script> <script src="https://analytics.vendor.com/v1.1/script.js" integrity="sha384-MBO5IDfYaE6c6Aao94oZrIOiC7CGiSNE64QUbHNPhzk8Xhm0djE6QqTpL0HzTUxk" crossorigin="anonymous"></script>
  • 14. 3rd party JavaScript - implementacja Skrypt serwowany samemu: • Code review • Self-hosted • Kontrolujemy ryzyko downtime • W sumie to prościej użyć <script src=„…” integrity=„…”>
  • 15. 3rd party JavaScript - sandboxing Skrypt serwowany w sandbox z iframe: <iframe src="https://my-website.com/analytics.html" sandbox="allow-same-origin allow-scripts"></iframe> Źródło: https://www.owasp.org/index.php/3rd_Party_Javascript_ Management_Cheat_Sheet my-website.com/index.html IFRAME: my-website.com/analytics.html ifrElement.contentWindow.postMessage window.addEventListener('message') window.addEventListener('message’) window.parent.postMessage
  • 16. Finai Tag Manager Tag Manager składa się z: 1. Frontu do konfiguracji 2. Serwera serwującego konfigurację do przeglądarek 3. Skryptu JS na stronie interpretującego konfigurację, uzupełniającego placeholdery/zmienne Ad. 1: JSON Ad. 2: CDN Ad. 3: var script = document.createElement("script"); var scriptText = document.createTextNode(js); script.appendChild(scriptText); document.body.appendChild(script);
  • 17. Finai Tag Manager [{ "Description": "DCM KredytomatRegistration", "type": "pixel", "uriTemplate": "https://ad.doubleclick.net/ddm/activity/...", "trigger": "PageView", "path": "/profile", "isEnabled": true }, { "Description": "GA virtual page view", "type": "js", "jsTemplate": "(function(){var img = document.createElement('img');...", "trigger": "PageView", "path": null, "isEnabled": true }]
  • 18. RODO, dane osobowe, tajemnica bankowa • W bankowości wszystko jest trudniejsze • Dane osobowe lub tajemnica bankowa mogą być wszędzie • W URLu też!