Прескочи на садржај
Biscotti CMP
CenePreuzimanjaDokumentacijaMCP ServerBlog
PrijavaПочните бесплатно
Početna›Blog
Koja je razlika između SessionStorage i LocalStorage?Технологија и праћење

SessionStorage vs. LocalStorage: Privatnost i implikacije Web Storage API-ja

7. јул 2026. · 17 min čitanja

Brzi odgovor: SessionStorage i localStorage su oba API-ja za Web Storage zasnovana na pretraživaču koji omogućavaju veb sajtovima da skladište podatke na uređaju korisnika, ali se kritično razlikuju u pogledu opstanka i obima. localStorage zadržava podatke neodređeno kroz sesije i tabove, dok sessionStorage briše podatke kada se tab pretraživača zatvori. Sa stanovišta privatnosti, localStorage nosi znatno veći rizik jer podaci ostaju bez isteka, čineći ga privlačnijim ciljem za praćenje, otisak prsta i regulatornu kontrolu prema okvirima kao što je GDPR.


Ključne tačke

  • localStorage opstaje neodređeno dok se eksplicitno ne obriše; sessionStorage se briše kada se tab ili prozor zatvore.
  • Obe vrste skladišta su ranjive na napade skriptovanja između sajtova (XSS) i ne nude ugrađenu enkripciju.
  • Ni localStorage ni sessionStorage podaci se automatski ne šalju na server, za razliku od kolačića, ali su oba potpuno čitljiva od strane bilo kojeg JavaScript-a koji se izvršava na istoj domeni.
  • Skripte trećih strana učitane na stranici mogu pristupiti podacima localStorage-a ako se izvršavaju u okviru iste domena.
  • Prema GDPR-u, skladištenje nebitnih podataka u localStorage-u bez saglasnosti korisnika predstavlja kršenje usklađenosti, isto kao i postavljanje kolačića za praćenje.
  • Osetljivi podaci kao što su tokene za autentifikaciju, lozinke i lične identifikacione informacije (PII) nikada ne bi trebali biti skladišteni u bilo kojem mehanizmu bez dodatnih bezbednosnih slojeva.
  • Privatno/incognito pretraživanje ograničava opstajanje localStorage-a, ali ne eliminiše rizike sessionStorage-a unutar sesije.
  • Programeri bi trebali preferirati sessionStorage za privremeno stanje, sesije na strani servera ili HttpOnly kolačiće za autentifikaciju, i platformu za upravljanje saglasnošću kao što je Biscotti CMP za upravljanje saglasnošću za skladištenje.

Koja je razlika između SessionStorage i LocalStorage?

SessionStorage i localStorage su oba deo HTML5 Web Storage API-ja, ali služe različitim svrhama definisanim njihovim opstankom i ponašanjem u okviru taba.

localStorage skladišti parove ključeva i vrednosti bez datuma isteka. Podaci opstaju nakon ponovnog pokretanja pretraživača, ponovnog pokretanja sistema i neodređenih perioda neaktivnosti dok ih korisnik ili aplikacija eksplicitno ne uklone. Deljeni su između svih tabova i prozora koji rade pod istom domenom (protokol + domen + port). [1][5]

sessionStorage skladišti podatke samo za vreme trajanja sesije stranice. Kada korisnik zatvori tab ili prozor, podaci nestaju. Kritično, svaki tab održava svoju izolovanu sessionStorage, otvaranje iste URL adrese u drugom tabu ne deli podatke sessionStorage-a prvog taba. [1]

Karakteristika localStorage sessionStorage
Opstanak Neodređeno Samo trajanje taba/prozora
Deljenje između tabova Da (ista domena) Ne (izolacija po tabu)
Opstaje nakon ponovnog učitavanja stranice Da Da
Opstaje nakon zatvaranja taba Da Ne
Kapacitet skladištenja ~5-10 MB po domeni ~5-10 MB po domeni
Prenos na server Ne Ne
HttpOnly zaštita Nije dostupna Nije dostupna

Oba API-ja se pridržavaju pravila iste domene, tako da stranica na https://example.com ne može čitati skladište postavljeno od strane https://otherdomain.com. [4]

Koja je razlika između SessionStorage i LocalStorage?


Da li localStorage ima rizike za privatnost u poređenju sa sessionStorage?

Da, localStorage nosi značajno veće rizike za privatnost od sessionStorage-a, prvenstveno zbog svog neodređenog opstanka i pristupačnosti između tabova.

Podaci zapisani u localStorage mogu se akumulirati tokom meseci ili godina bez saznanja korisnika. Oglašivači i analitički dobavljači su istorijski koristili localStorage kao "super-kolačić", identifikator za praćenje koji opstaje nakon brisanja kolačića jer većina korisnika ne misli da ručno očisti skladište pretraživača. sessionStorage, s druge strane, samouništava se pri zatvaranju taba, čineći ga daleko manje korisnim vektorom za praćenje.

Ključni faktori rizika za privatnost jedinstveni za localStorage:

  • Persistenti identifikatori za praćenje: Jedinstveni ID smešten u localStorage može pratiti korisnika kroz više poseta bez ikakvog kolačića na strani servera.
  • Curjenje podataka između tabova: Bilo koja skripta koja se izvršava u bilo kojem tabu iste domene može čitati sve podatke localStorage-a.
  • Emitovanje događaja skladišta: Promene u localStorage pokreću storage događaj u drugim otvorenim tabovima iste domene, omogućavajući sinhronizaciju podataka između tabova koju korisnici ne mogu primetiti. [5]
  • Bez automatskog isteka: Za razliku od kolačića, koji podržavaju Max-Age i Expires atribute, localStorage nema TTL mehanizam.

Mogu li veb sajtovi pratiti korisnike koristeći localStorage i sessionStorage?

Veb sajtovi mogu i koriste localStorage za persistentno praćenje. sessionStorage je manje koristan za praćenje, ali i dalje predstavlja rizike nadzora unutar sesije.

Jedna linija JavaScript-a, localStorage.setItem('uid', 'abc123'), stvara persistentni identifikator koji opstaje nakon brisanja kolačića. Ova tehnika, ponekad nazvana "evercookie" ili ponovo oživljavanje na bazi skladišta, dokumentovana je u istraživanjima privatnosti i razlog je zašto regulatori sve više tretiraju localStorage prema istim pravilima saglasnosti kao kolačiće.

sessionStorage može pratiti ponašanje unutar jedne sesije (tok stranice, unosi u formama, obrasci navigacije), ali ti podaci nestaju kada se tab zatvori, ograničavajući njegovu korisnost za dugoročno profilisanje.


Koliko dugo podaci ostaju u SessionStorage-u u poređenju sa LocalStorage-om?

Podaci u localStorage ostaju dok se eksplicitno ne obrišu, bilo od strane korisnika koji čisti skladište pretraživača, veb sajta koji poziva localStorage.removeItem() ili localStorage.clear(), ili pretraživača koji sprovodi kvote skladištenja. [2]

Podaci u sessionStorage se automatski brišu kada se tab ili prozor koji ih je stvorio zatvori. Opstaju nakon ponovnog učitavanja stranice unutar istog taba, ali se ne prenose na nove tabove, čak i ako korisnik duplicira tab u nekim pretraživačima. [1]

Praktična implikacija: Ako programer skladišti sesijski token u localStorage umesto u sessionStorage, taj token ostaje na uređaju nakon što se korisnik odjavi, osim ako ga aplikacija eksplicitno ne ukloni. Ovo je uobičajena i značajna greška.


Da li je SessionStorage privatniji od localStorage-a?

Za većinu slučajeva privatnosti, da, sessionStorage je privatniji izbor. Njegovo automatsko brisanje pri zatvaranju taba znači da podaci ne ostaju, smanjujući izloženost deljenju uređaja, ukradenim uređajima ili forenzičkoj analizi.

Međutim, sessionStorage nije inherentno "privatan." Unutar aktivne sesije, podložan je XSS napadima jednako kao i localStorage. Bilo koja injektovana skripta može pozvati sessionStorage.getItem() i izvesti podatke u realnom vremenu. [3]

Izaberite sessionStorage ako: su podaci potrebni samo za trenutnu interakciju korisnika (npr. stanje višekratne forme, jednokratni navigacijski tokeni).

Izaberite localStorage ako: podaci zaista moraju opstati kroz sesije (npr. korisničke UI preferencije, neosetljive postavke), i osigurajte da ne sadrže ništa lično identifikovano.


Koje lične podatke nikada ne bi trebalo skladištiti u localStorage?

Sledeće kategorije podataka nikada ne bi trebalo skladištiti u localStorage (i treba ih obraditi sa ekstremnom pažnjom čak i u sessionStorage-u): [3]

  • Tokene za autentifikaciju (JWT-ovi, OAuth tokeni, ID sesije)
  • Lozinke ili heševi lozinki
  • Informacije o kreditnim karticama ili plaćanju
  • Brojevi ličnih karata ili socijalnog osiguranja
  • Puna imena u kombinaciji sa adresama e-pošte ili brojevima telefona
  • Medicinski ili zdravstveni podaci
  • Bilo koji podaci klasifikovani kao "posebna kategorija" prema GDPR-u (biometrijski podaci, zdravstveni podaci, politička mišljenja)

Podaci skladišteni u localStorage i sessionStorage su podrazumevano nekriptovani. Svako ko ima fizički pristup uređaju, ili bilo koja skripta koja može da se izvrši na stranici, može ih pročitati u običnom tekstu. [3]


Mogu li skripte trećih strana pristupiti podacima localStorage-a?

Skripte trećih strana mogu pristupiti podacima localStorage-a ako su učitane i izvršene unutar iste domene kao i stranica domaćina. Ovo je kritičan i često potcenjen rizik.

Kada veb sajt ugrađuje skriptu za analitiku ili oglašavanje treće strane putem <script> taga, ta skripta se izvršava u kontekstu domene stranice domaćina. Može slobodno čitati i pisati u localStorage sajta. Pravilo iste domene ne štiti od skripti koje su namerno ili nenamerno uključene na stranicu. [4]

Šta to znači u praksi: Ako sajt skladišti identifikator korisnika u localStorage-u i takođe učitava skriptu za oglašavanje treće strane, ta skripta može pročitati identifikator i povezati ga sa podacima o ponašanju između sajtova, bez znanja ili saglasnosti korisnika.

Ovo je jedan od razloga zašto su platforme za upravljanje saglasnošću važne. Biscotti CMP omogućava veb sajtovima da upravljaju i dokumentuju saglasnost korisnika za operacije skladištenja, uključujući praćenje zasnovano na localStorage-u, pomažući sajtovima da ispune svoje obaveze prema GDPR-u i sličnim okvirima.


Koje su GDPR implikacije korišćenja localStorage-a?

Prema GDPR-u, svako skladištenje ličnih podataka ili identifikatora za praćenje, bez obzira na tehnički mehanizam, zahteva zakonitu osnovu. Za nebitno praćenje putem localStorage-a, ta osnova je gotovo uvek eksplicitna saglasnost korisnika. [2]

Evropski odbor za zaštitu podataka potvrdio je da se localStorage korišćen za analitiku, oglašavanje ili profilisanje korisnika podvrgava istim zahtevima saglasnosti kao kolačići. Veb sajtovi koji postavljaju identifikatore za praćenje u localStorage bez prethodne saglasnosti suočavaju se sa istim rizikom od sprovođenja kao i oni koji koriste kolačiće bez saglasnosti.

Lista provere usklađenosti za localStorage prema GDPR-u:

  • Proverite sve localStorage ključeve koje su napisale skripte prve i treće strane.
  • Klasifikujte svaki ključ: da li je strogo neophodan za uslugu, ili se koristi za analitiku/oglašavanje?
  • Za nebitno skladištenje, ograničite operaciju pisanja na dokumentovanu saglasnost korisnika.
  • Pružite korisnicima jasan mehanizam za povlačenje saglasnosti i pokretanje brisanja skladišta.
  • Dokumentujte legitimni interes ili zapis o saglasnosti kontrolora podataka.

Pravilno konfigurisana platforma za upravljanje saglasnošću kao što je Biscotti CMP može automatizovati veći deo ovog životnog ciklusa saglasnosti.


Može li se localStorage pristupiti sa različitih veb sajtova?

Ne. localStorage je strogo ograničen na domenu (kombinacija protokola + domen + port) koja ga je stvorila. Skripta na https://siteA.com ne može čitati podatke localStorage-a postavljene od strane https://siteB.com. [4]

Međutim, ova zaštita ima ograničenja. Ako jedan dobavljač oglašavanja ili analitike učita svoje skripte na oba siteA.com i siteB.com, svaka instanca nezavisno piše u localStorage tog odgovarajućeg sajta. Dobavljač zatim korelira podatke na strani servera, efikasno ostvarujući praćenje između sajtova bez kršenja pravila iste domene.


Kako režim inkognito i privatno pretraživanje utiču na localStorage?

Privatno/incognito pretraživanje stvara privremenu particiju skladištenja koja se briše kada se privatni prozor zatvori. localStorage napisano tokom incognito sesije ne opstaje u glavnom profilu pretraživača i nije dostupno redovnim prozorima za pretraživanje.

sessionStorage se ponaša isto u incognito režimu kao i u redovnom pretraživanju: briše se kada se tab zatvori.

Važne napomene:

  • Unutar aktivne incognito sesije, localStorage je i dalje čitljiv od strane svih skripti koje se izvršavaju u kontekstu iste domene te sesije.
  • Incognito režim ne sprečava real-time XSS bazirano curenje podataka.
  • Neki pretraživači sinhronizuju localStorage između uređaja ako je korisnik prijavljen na sinhronizaciju pretraživača, ponašanje koje može premestiti "lokalne" podatke na cloud infrastrukturu.

Kako da očistim SessionStorage i localStorage radi privatnosti?

Čišćenje skladišta pretraživača je jednostavno, ali zahteva namernu akciju jer pretraživači to ne rade automatski za localStorage.

Čišćenje na nivou pretraživača:

  • Chrome: Podešavanja > Privatnost i bezbednost > Očisti podatke pretraživanja > Keširane slike i datoteke + Podaci sa sajta
  • Firefox: Podešavanja > Privatnost i bezbednost > Kolačići i podaci sa sajta > Očisti podatke
  • Safari: Podešavanja > Privatnost > Upravljanje podacima sa sajta

Programatsko čišćenje (za programere):

  • localStorage.clear() uklanja sve ključeve za domenu.
  • sessionStorage.clear() uklanja sve ključeve za trenutnu sesiju taba.
  • localStorage.removeItem('keyName') uklanja određeni ključ.

Za krajnje korisnike zabrinute zbog praćenja: čišćenje "podataka sa sajta" ili "kolačića i skladišta" u podešavanjima pretraživača uklanja sadržaj localStorage i sessionStorage za sve sajtove. Ekstenzije pretraživača dizajnirane za privatnost mogu automatizovati ovo na osnovu svakog sajta ili svake sesije.


Koje su uobičajene greške u privatnosti koje programeri prave sa Web Storage-om?

Najznačajnije greške dele zajednički koren: tretiranje skladišta na strani klijenta kao da je sigurna baza podataka na strani servera.

  • Skladištenje JWT-ova u localStorage: Tokeni za autentifikaciju smešteni u localStorage su dostupni svakoj skripti na stranici. Jedna XSS ranjivost izlaže token svakog korisnika. Umesto toga, koristite HttpOnly kolačiće za tokene za autentifikaciju.
  • Bez logike isteka: localStorage nema TTL. Programeri koji skladište podatke bez izgradnje logike isteka ostavljaju zastarele, osetljive podatke na uređajima neodređeno.
  • Pretpostavljanje da ista domena znači sigurnost: Pravilo iste domene blokira spoljne sajtove, ne zlonamerne skripte učitane iznutra iste stranice (XSS, kompromitovane biblioteke trećih strana).
  • Ignorisanje pristupa skripti trećih strana: Uključivanje analitičkih ili oglasnih skripti bez revizije onoga što čitaju iz localStorage-a.
  • Bez saglasnosti za skladištenje praćenja: Pisanje identifikatora analitike u localStorage pre dobijanja saglasnosti korisnika, direktno kršenje GDPR-a. [2]
  • Skladištenje redundantnih PII: Keširanje API odgovora koji uključuju pune korisničke profile u localStorage "radi performansi" bez razmatranja površine izloženosti.

Da li je IndexedDB privatniji od localStorage-a?

IndexedDB nije inherentno privatniji od localStorage-a. Obe su podložne pravilima iste domene, obe su dostupne JavaScript-u koji se izvršava na stranici, i obe su ranjive na XSS napade.

IndexedDB nudi veći kapacitet skladištenja i podržava strukturirane podatke i binarne blobove, što ga čini pogodnim za složene offline aplikacije. Ali sa stanovišta privatnosti i bezbednosti, rizici su uporedivi. Podaci skladišteni u IndexedDB-u su takođe podrazumevano nekriptovani i opstaju neodređeno osim ako se eksplicitno ne obrišu.

Izbor između IndexedDB-a i localStorage-a treba da bude vođen složenošću podataka i zahtevima za obimom, a ne pretpostavkama o privatnosti. Nijedna od njih nije pogodna za osetljive lične podatke bez enkripcije na nivou aplikacije i strogih kontrola pristupa.


Zaključak

Debata o SessionStorage vs. LocalStorage: Privatnost i implikacije Web Storage API-ja nije samo tehnička fusnota, već ima direktne posledice za privatnost korisnika, usklađenost sa propisima i bezbednost aplikacija. Neodređeni opstanak localStorage-a i pristupačnost između tabova čine ga visokorizičnim mehanizmom skladištenja kada se zloupotrebi, dok automatsko brisanje sessionStorage-a pri zatvaranju taba čini ga odbranjivijim izborom za privremeno stanje.

Akcioni koraci za programere i vlasnike veb sajtova u 2026. godini:

  1. Proverite svu upotrebu localStorage-a i sessionStorage-a kroz skripte prve i treće strane koristeći DevTools pretraživača (kartica Aplikacija).
  2. Odmah uklonite sve tokene za autentifikaciju, PII ili osetljive identifikatore iz skladišta na strani klijenta.
  3. Zamenite skladištenje tokena za autentifikaciju zasnovano na localStorage-u sa HttpOnly, Secure kolačićima upravljanim na strani servera.
  4. Implementirajte radni tok za upravljanje saglasnošću, koristeći platformu kao što je Biscotti CMP, kako biste ograničili nebitna pisanja u localStorage na dokumentovanu saglasnost korisnika.
  5. Izgradite logiku isteka u bilo kojim podacima localStorage-a koji moraju opstati, i sprovodite čišćenje prilikom odjave.
  6. Sprovodite reviziju skripti trećih strana kako biste razumeli koji spoljašnji kod može čitati iz skladišta vaše domene.
  7. Obučite razvojne timove o prevenciji XSS-a kao primarnom vektoru napada protiv oba tipa skladišta.

API-ji za web skladištenje su moćni alati. Kada se koriste bez discipline privatnosti, postaju vektori odgovornosti. Kada se koriste sa namernim ograničenjem, upravljanjem saglasnošću i bezbednosnom higijenom, služe svojoj nameni bez kompromitovanja korisnika koji veruju vašoj aplikaciji.


FAQ

P: Koja je glavna razlika između sessionStorage i localStorage?
localStorage opstaje neodređeno kroz sesije i deli se između svih tabova iste domene. sessionStorage skladišti podatke samo za trajanje trenutnog taba i automatski se briše kada se tab zatvori.

P: Može li se localStorage koristiti za praćenje korisnika bez kolačića?
Da. Jedinstveni identifikator smešten u localStorage opstaje nakon brisanja kolačića i može se koristiti za praćenje korisnika kroz više poseta istom sajtu, funkcionišući kao persistentni mehanizam za praćenje.

P: Da li je sessionStorage siguran za skladištenje lozinki?
Ne. sessionStorage nije enkriptovan i dostupan je svakom JavaScript-u koji se izvršava na stranici, uključujući injektovane zlonamerne skripte. Lozinke nikada ne bi trebalo skladištiti u bilo kojem mehanizmu skladištenja na strani klijenta.

P: Da li se GDPR primenjuje na localStorage?
Da. Prema GDPR-u, skladištenje identifikatora za praćenje ili ličnih podataka u localStorage-u bez zakonite osnove, obično eksplicitne saglasnosti korisnika za nebitne svrhe, predstavlja kršenje usklađenosti ekvivalentno korišćenju kolačića bez saglasnosti.

P: Mogu li skripte trećih strana čitati moje podatke iz localStorage-a?
Da, ako su te skripte učitane i izvršene unutar iste domene. Skripte za analitiku ili oglašavanje treće strane ugrađene putem <script> tagova izvršavaju se u kontekstu domene stranice domaćina i mogu čitati sve podatke localStorage-a za tu domenu.

P: Da li čišćenje kolačića takođe čisti localStorage?
Ne uvek. U većini pretraživača, čišćenje "kolačića" samo po sebi ne čisti localStorage. Korisnici moraju posebno očistiti "podatke sa sajta" ili "kolačiće i druge podatke sa sajta" kako bi uklonili sadržaj localStorage-a.

P: Da li je inkognito režim siguran od praćenja localStorage-a?
Inkognito režim sprečava da podaci localStorage-a opstaju nakon zatvaranja privatnog prozora, ali unutar aktivne incognito sesije, localStorage je i dalje čitljiv od strane svih skripti na stranici.

P: Šta da koristim umesto localStorage-a za tokene za autentifikaciju?
Koristite HttpOnly, Secure, SameSite kolačiće upravljane na strani servera. Ovi kolačići su nedostupni JavaScript-u, eliminišući rizik od krađe tokena zasnovanog na XSS-u koji nosi localStorage.

P: Da li je IndexedDB sigurniji od localStorage-a?
Ne. IndexedDB je podložan istim XSS ranjivostima i pravilima iste domene kao i localStorage. Nudi veći kapacitet i podršku za strukturu podataka, ali ne pruža dodatne garancije privatnosti ili bezbednosti.

P: Koliko podataka može da drži localStorage i sessionStorage?
Većina modernih pretraživača dodeljuje približno 5 do 10 MB skladišta po domeni za svaku vrstu skladišta, što je značajno više od 4 KB limita tipičnog za kolačiće. [2]


Reference

[1] Sessionstorage - https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage?utm_source=openai

[2] Šta je Localstorage Sessionstorage - https://inspectwp.com/en/knowledge-base/what-is-localstorage-sessionstorage?utm_source=openai

[3] Html5 Web Storage Security Risks Safeguarding Localstorage And Sessionstorage - https://www.dopethemes.com/html5-web-storage-security-risks-safeguarding-localstorage-and-sessionstorage/?utm_source=openai

[4] Localstorage - https://javascript.info/localstorage?utm_source=openai

[5] Localstorage Sessionstorage - https://www.w3docs.com/learn-javascript/localstorage-sessionstorage?utm_source=openai

[6] Kolačići vs Localstorage vs Sessionstorage: Šta svaka od njih tačno znači - https://www.interserver.net/tips/kb/cookies-vs-localstorage-vs-sessionstorage-what-each-one-exactly-means/?utm_source=openai

Povezani članci

Технологија и праћење

Google Consent Mode v2: Obavezne Ažuriranja koja Trebate Implementirati Danas

Google Consent Mode v2 je obavezan za EEA i UK sajtove. Saznajte šta se promenilo, 4 obavezna parametra, korake postavljanja i kako izbeći 67% stopu grešaka.

Технологија и праћење

LocalStorage van radara: Zašto takođe zahteva eksplicitnu saglasnost korisnika

LocalStorage zahteva eksplicitnu saglasnost korisnika prema GDPR-u i zakonima o privatnosti. Saznajte zašto se zanemaruje i kako popraviti usklađenost do 2026.

Технологија и праћење

Nevidljiva 1x1 pretnja: Osiguravanje pravne ispravnosti vašeg praćenja piksela

Saznajte kako funkcionišu 1x1 praćenje piksela, šta zahtevaju GDPR i CCPA, i kako da proverite i otkrijete praćenje piksela kako biste ostali u skladu sa zakonom 2026. godine.

Produbite Svoje Znanje

Pronađite sveobuhvatne članke o svim temama u našoj bazi znanja.

Idite u Bazu Znanja

Provera kolačića

Provera kolačića
← Povratak na blog
Biscotti CMP

Made with 🍪 in Germany.

Proizvod

O namaFunkcijeCeneDokumentacijaMCP ServerProvera kolačićaПриступачностPreuzimanjaLegal WatchdogAssessment EngineTrust PortalEnterpriseБаза знања о приватности и сагласностиBlogРечник сагласности за колачиће и приватностиJurisdikcijeПриступачност као начело дизајна

Pravno

ImpresumPolitika privatnostiUslovi korišćenjaPravo na povlačenjeDPAPolitika kolačića

Kontakt

Kontakt
© 2026 Biscotti – Usluga kompanije Campcruisers GmbH