Hi,
I have some problems in a Conversational Agents project, where I use a public availlible bucket in GC which contains a lot of PDF files. The bucket is used to feed a datastore, this works fine.
The goal is that every user must be able to download a provided PDF link as presented in the snippet without logging in with a Google account.
When a user gets a link/snippet provided in CA, he is only able to download the provided PDF link if logged in with a Google account, because the App provides an authenticated link instead of a public link! (https://storage.googleapis.com/bucket-name = public, https://storage.cloud.google.com/buckdet-name = authenticated link used in App)
I checked the following:
- Bucket is public availlible; when I use Copy Public URL this works fine in a incognito browser.
-When I copy the link from the CA App, it redirect to the Google login page and you need to login with a Google account (because it is a authenticated link)
-The Buckets, App and datastore are setup in the same region.
-The Bucket is configured with a permission of AllUsers set to Storage Legacy Object Reader as found in the documentation.
Question: Where do I setup in CA to use a public link?
Can anyone advise?
Thanks!!
Solved! Go to Solution.
Hi @johnvw1967.,
Welcome to Google Cloud Community!
The issue of authenticated download links for publicly accessible PDF files in the user's Conversational Agents project likely stems from a configuration setting within the Conversational Agent platform or the logic used to generate the links. For users of the Conversational Agents console (Vertex AI Agent Builder), enabling the "Public Access" option in the web integration settings is the most probable solution. For those using Dialogflow CX, the key lies in verifying the data store configuration, ensuring the use of public URL formats in any provided metadata, and potentially reviewing or modifying the Fulfillment settings or any involved webhook code to explicitly construct public GCS URLs using the https://storage.googleapis.com/...
domain.
You may also check these documents for more information.
1. Securing PDFs in a webserver from public access
Was this helpful? If so, please accept this answer as “Solution”. If you need additional assistance, reply here within 2 business days and I’ll be happy to help.
Hi,
I solved this. Had to create a JSONL file for all PDFs as described in the documentation.
This JSONL file is linking every document to a Bucket and Public url. Every document line has its own unique id.
More info at: https://cloud.google.com/dialogflow/cx/docs/concept/data-store#with-metadata
Hi @johnvw1967.,
Welcome to Google Cloud Community!
The issue of authenticated download links for publicly accessible PDF files in the user's Conversational Agents project likely stems from a configuration setting within the Conversational Agent platform or the logic used to generate the links. For users of the Conversational Agents console (Vertex AI Agent Builder), enabling the "Public Access" option in the web integration settings is the most probable solution. For those using Dialogflow CX, the key lies in verifying the data store configuration, ensuring the use of public URL formats in any provided metadata, and potentially reviewing or modifying the Fulfillment settings or any involved webhook code to explicitly construct public GCS URLs using the https://storage.googleapis.com/...
domain.
You may also check these documents for more information.
1. Securing PDFs in a webserver from public access
Was this helpful? If so, please accept this answer as “Solution”. If you need additional assistance, reply here within 2 business days and I’ll be happy to help.
User | Count |
---|---|
2 | |
2 | |
1 | |
1 | |
1 |