MySQL: como fazer a segurança em nível de linha (como o Banco de Dados Privado Virtual da Oracle

Diga que tenho fornecedores que vendem vários produtos. Portanto, em um nível básico, terei as seguintes tabelas:vendor, product, vendor_product.

Se o vendedor-1 adicionarWidget 1 aoproduct table, quero que apenas o fornecedor-1 veja essas informações (porque essas informações são "de propriedade" do fornecedor-1). O mesmo vale para o fornecedor-2. Digamos que o fornecedor 2 adicionaWidget 2, apenas o fornecedor-2 deve ver essas informaçõe

Se o fornecedor-1 tentar adicionarWidget 2, que já foi inserido pelo fornecedor-2, uma entrada duplicada paraWidget 2 não deve ser criado noproduct tabela. Isso significa que, de alguma forma, preciso saber que o fornecedor-2 agora também "possui"Widget 2.

Um problema em ter vários "proprietários" de uma informação é como lidar com os proprietários editando / excluindo os dados. Talvez o fornecedor-1 não queira maisWidget 2 estar disponível para ele, mas isso não se aplica necessariamente ao fornecedor-

Finalmente, quero a capacidade de sinalizar (?) Determinados registros como "sim, revisei esses dados e estão corretos", para que depois fiquem disponíveis para todos os fornecedores. Diga que eu sinalizoWidget 1 como bons dados, esse produto deve agora ser visto por todos os fornecedore

Parece que a solução é a segurança no nível da linha. O problema é que eu não estou muito familiarizado com seus conceitos ou como implementá-lo no MySQL. Qualquer ajuda é muito apreciada. Obrigado

NOTA: este problema é um pouco discutido aqui: Design de banco de dados: use chave composta como FK, sinalize dados para compartilha. Quando fiz a pergunta, não tinha certeza de como formular a pergunta muito bem. Felizmente, expliquei melhor o meu problema desta vez.