No estoy seguro de entender lo que quiere decir con "derechos de propiedad".
Si el usuario B posee un procedimiento almacenado, el usuario B puede otorgar permiso al usuario A para ejecutar el procedimiento almacenado
GRANT EXECUTE ON b.procedure_name TO a
El usuario A llamaría al procedimiento utilizando el nombre completo, es decir,
BEGIN
b.procedure_name( <<list of parameters>> );
END;
Alternativamente, el usuario A puede crear un sinónimo para evitar tener que usar el nombre de procedimiento completo.
CREATE SYNONYM procedure_name FOR b.procedure_name;
BEGIN
procedure_name( <<list of parameters>> );
END;