Previous macOS versions allowed you to control what apps can access your location, contacts, photos, calendar and reminders. macOS Mojave adds the ability to control what apps can access your camera and microphone.
So the 1st time Chrome, Slack or Zoom will try to access your camera or microphone you will get a prompt from macOS:
The prompt will not show for some Apple apps like Safari, FaceTime, Photo Booth and even Safari Technology Preview as they're allowed by default. QuickTime on the other hand will trigger the macOS prompts for camera & mic access.
The answer to the prompt is persistent and the app will be listed in
System Preferences > Security & Privacy > Privacy > Camera .
Apps with access to the camera will have a check mark in the above list. You can revoke access by unchecking the app you want to revoke access to. There's a separate list for apps which have requested microphone access.
macOS will only prompt you once for each app. It will not prompt you again about apps in the list. If you want to change the permission for these apps, you will have to do it from the list above.
You can however reset the entire camera and microphone access list by issuing the following commands in the Terminal:
tccutil reset Camera and
tccutil reset Microphone
OS Level vs Browser Level Permissions
The (OS level) prompt & permission above is different from the (browser level) prompts and permissions you get in Chrome and Firefox for each domain.
For example when trying to record a video in Chrome with the Pipe video recorder on a fresh install of macOS Mojave you'll first be asked by the browser to allow the domain to access the camera and microphone:
and then by macOS for permission to access the microphone (1st macOS prompt):
and camera (2nd macOS prompt):
If you block the browser level permission you will not get the OS level prompts.