https://discord.cloudflare.com logo
Join Discord
Powered by
# r2
  • l

    lmtr0

    03/10/2022, 9:59 PM
    Ok got it, thanx
  • v

    Vitali

    03/11/2022, 1:58 AM
    I'm not a lawyer so I don't know what the regulatory requirements are. Could you build something yourself even without official support? 1. Create some cryptographic material that you bind to a worker (perhaps unique key material per region). You can encrypt this yourself if you're extra paranoid but Workers secrets already have several layers of encryption. 2. Derive per object keys. 3. Construct a
    TransformStream
    (technically
    FixedLengthStream
    ) that encrypts the data, & then send that to R2. You could use the region info in the headers (e.g.
    CF-IPCountry
    ) to do access controls/key derivation. While the data may not be physically located in a specific region, the ability to decrypt that content is restricted to requests originating in whatever region.
  • s

    skarj

    03/11/2022, 6:29 AM
    In theory this would work however, in all the major cloud providers e.g aws, azure etc.. it is as simple as choosing the storage location. I have a lot of use cases where data needs to reside either in Australia or New Zealand and it common where government entities are involved or the data has citizen information
  • k

    kian

    03/11/2022, 10:00 AM
    the theory seems sound but then there’s the overhead of explaining or justifying that to the business or auditors/regulatory bodies - as well as that process of creating the Worker to handle it
  • z

    zegevlier

    03/11/2022, 1:18 PM
    Isn't the point of the regulations that other country's governments aren't able to access the data? If you had a worker that knew the private keys and that worker was globally distributed, those private keys would still be on servers where other country's governments could access them. Even if the private keys were encrypted, the worker would have to have the non-encrypted versions when running. Not a lawyer and maybe I'm missing something, but it doesn't really sound like a solution.
  • v

    Vitali

    03/11/2022, 2:10 PM
    @User Sure. You could mitigate that concern by placing the keys to live in region-locked origin that only honored requests from Workers running in the same country (or however you want to restrict that access). It all depends on what your threat model is and the language of the relevant regulations. I wasn't suggesting this how R2 will have you manage data sovereignty & I fully recognize the cost burden it shifts to developers and that's not OK. We will eventually add support for it. I was simply suggesting this as an interim possibility for anyone that urgently wants to use R2 in it's current state AND has data sovereignty needs.
  • m

    Mrxbox98

    03/12/2022, 2:11 AM
    How fast are r2 download speeds?
  • e

    Erwin

    03/12/2022, 9:49 AM
    Yes 😉
  • e

    Epailes

    03/12/2022, 11:49 AM
    Minimum 1bit/minute
  • k

    konhi

    03/12/2022, 11:51 AM
  • m

    MyZeD

    03/12/2022, 1:34 PM
    you mean: per hour
  • e

    Epailes

    03/12/2022, 1:38 PM
    Subject to weather conditions and how in shape your postie is to deliver the usb stick, no downloads on sundays
  • b

    BrammyS

    03/12/2022, 4:12 PM
    https://tenor.com/view/mr-bean-mr-bean-bored-waiting-gif-16962141
  • b

    BrammyS

    03/12/2022, 4:12 PM
    Waiting for R2.
  • b

    BrammyS

    03/12/2022, 4:12 PM
  • l

    lmtr0

    03/13/2022, 12:19 AM
    we are two lmao
  • v

    Vitali

    03/14/2022, 1:33 PM
    Unfortunately we don’t actually know ourselves yet. I’m building the benchmark infrastructure this week which will inform us where we are (just as a starting point so we can validate our changes have the expected behavior).
  • m

    Mrxbox98

    03/15/2022, 4:47 AM
    Is migration from other S3 provider easy?
  • a

    andrew | 1003

    03/15/2022, 4:53 AM
    Basically it connects to your S3 bucket, then whenever you access files it lazily pulls them and migrates them to R2. So then you only incur egress costs once. to quote Isaac Mcfadyen from above^^
  • m

    Mrxbox98

    03/15/2022, 4:53 AM
    Very nice
  • v

    Vitali

    03/15/2022, 5:07 AM
    Yes, our goal is to make it as easy as possible.
  • e

    Epailes

    03/15/2022, 9:33 AM
    Will there be something to delete it from the S3 bucket after transfer is successful? (Maybe an optional config defaulting to not delete)
  • e

    Epailes

    03/15/2022, 9:33 AM
    Or will we have to handle that ourselves?
  • e

    Erwin

    03/15/2022, 10:30 AM
    I am not sure that is in the current plan, but it is a great suggestion 🙂
  • v

    Vitali

    03/15/2022, 1:30 PM
    It's already part of the current plan for this & it will be the default to not delete.
  • v

    Vitali

    03/15/2022, 1:30 PM
    Great suggestion obviously 🙂
  • a

    andrew

    03/15/2022, 2:11 PM
    fwiw, it’d be good to see max object sizes as high as possible
  • a

    andrew

    03/15/2022, 2:11 PM
    eg in the tens of GBs
  • a

    andrew

    03/15/2022, 2:12 PM
    also, range requests are important
  • v

    Vitali

    03/15/2022, 4:52 PM
    Range requests are available. The S3 endpoint currently has a ~5GB limit in PutObject (maybe just a smidge lower). You can do a multipart upload for larger files up to ~5TB. The runtime bindings are trickier. The bindings themselves have the same limit as the S3 endpoint but your Worker itself will have the 500 MB inbound request limit as described https://developers.cloudflare.com/workers/platform/limits/#request-limits (& also buffered uploads). I don't know what this will look like as the work hasn't started.
1...101112...1050Latest