You can (and probably should) seal before applying any final finish. It is best to check compatibility (either via the label, contacting the manufacturer, or doing a test piece) before proceeding.
Sometimes it's not absolutely necessary (e.g. putting an oil based poly over boiled linseed oil, or an oil based stain.) But any time you are courting compatibility issues (say putting a water based poly over an oil stain) it's a good idea.
It is likely essential anytime you are doing a refinish, especially if you do not know - for sure - what has been applied. As others have mentioned silicone is an insidious substance. It will penetrate many finishes and get onto the wood - once it is there it is all but impossible to remove. Flame scorching (aka burning) the surface then sanding being about the only foolproof method.