I’ve been trying to use the dropbox backup integration but my server is intentionally not externally accessible (outbound only) for security reasons. It sits behind an internal IP on a real machine, and while some internal machines use an internal DNS server to access it via a friendly URL, it doesn’t have any official external URL/DNS entry.
What is the correct process to enable dropbox backup without the from-external access?
I tried placing the access key/secret and tokens inside the frontend/site_config.json but this fails due to invalid redirect_uri.
Not really keen on it, we have a domain and we could forward a subdomain, but it introduces a security risk and audit requirement for a small company for absolutely no reason. I think we may just stick to local backups for now.
I followed some advice online (always dangerous) and ensured my site_config had the access token generated in the DBX dashboard, as well as the two keys. While the “allow access” button still fails on URI, I got an overnight backup attempt that yielded this error:
Error message: Traceback (most recent call last): File “apps/frappe/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py”, line 87, in take_backup_to_dropbox did_not_upload, error_log = backup_to_dropbox(upload_db_backup) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File “apps/frappe/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py”, line 118, in backup_to_dropbox dropbox_client = get_dropbox_client(dropbox_settings) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File “apps/frappe/frappe/integrations/doctype/dropbox_settings/dropbox_settings.py”, line 275, in get_dropbox_client dropbox_client.files_list_folder(“”) File “env/lib/python3.11/site-packages/dropbox/base.py”, line 2145, in files_list_folder r = self.request( ^^^^^^^^^^^^^ File “env/lib/python3.11/site-packages/dropbox/dropbox_client.py”, line 351, in request raise ApiError(res.request_id, dropbox.exceptions.ApiError: ApiError(‘redacted’, ListFolderError(‘path’, LookupError(‘unsupported_content_type’, None)))
Yesterday the error I got was a permissions one, so this seems like a forward movement. This seems like a more simple error than an auth error.