todo el mundo.
Soy nuevo en Supabase y estoy explorando todas las funciones disponibles en esta increíble plataforma. Desafortunadamente, tengo algunos problemas con la creación de depósitos. Intenté también crear manualmente el depósito y luego cargar algún archivo y obtuve el mismo error.
El error es: "la nueva fila viola la política de seguridad de nivel de fila para la tabla "objetos""
Estaría muy agradecido si alguien pudiera ayudarme.
Aquí está mi código:
const { data, error } = await supabase .storage .createBucket(`bucket-${user.id}`, { public: false }) console.log(data, error);Sé que es bastante tarde, pero estoy agregando para futuros lectores como yo.
Agregando a lo que Mark dijo anteriormente. La protección basada en políticas de flujos de Supabase para tablas cuando crea una tabla generalmente está deshabilitada, pero para la tabla de cubos está habilitada de manera predeterminada, no he intentado eliminarla ya que es una buena idea tener una, especialmente para activos como imágenes.
Lo que debe hacer es definir la política para su depósito tal como se muestra en este video, es del CTO. Lo está haciendo para las tablas que creó, siga lo mismo para storage.objects . Haga clic en Políticas desde la navegación lateral de la página de almacenamiento.
https://www.youtube.com/watch?v=qY_iQ10IUhs&ab_channel=Supabase
Nunca use la clave service_role en el lado de la interfaz de usuario. Es la llave maestra de su proyecto.
Vea las notas de permisos de la política aquí:
https://supabase.io/docs/reference/javascript/storage-createbucket#notes
Entonces parece que necesitará un conjunto de permisos de insert .
Debe crear un cliente con SERVICE_KEY no SUPABASE_KEY
Puede encontrar SERVICE_KEY en:
Configuración> (configuración del proyecto) API> service_role secret , haga clic en reveal y copie la clave
Esta clave tiene la capacidad de eludir la seguridad de nivel de fila. Nunca lo compartas públicamente.