Is the Supabase anon key secret?
No. It is designed to be in your website, like the newer sb_publishable_ keys. It identifies your project; Row Level Security decides what it may do. The service_role and sb_secret_ keys are the secret ones.
Does the service role key bypass RLS?
Yes, completely. That is why it belongs only on a server or in an edge function, never in the browser.
If RLS is on, am I safe?
Only if the policies are right. RLS with a policy of using (true) for everyone is the same as no RLS. Test as a stranger and as a second user.
Does RLS slow my queries down?
A little, on large tables. Index the columns your policies compare (such as user_id) and wrap auth.uid() in a select as in the example, which Supabase recommends for speed.