Сохранить состояние входа пользователя в реакцию или глобальное состояние, если вы используете redux.
Затем вы можете создать личный маршрут в реакции и проверить роли пользователя
const PrivateRoute = (props)=>(
<Route {...props.routeProps} render={() => (
props.logged_in===true ? (
<div>{props.children}</div>
) : (
<Redirect to={{
pathname: '/',
state: { from: props.location }
}} /> )
)} />
)
и вы можете использовать этот компонент как
<PrivateRoute path = {"/admin/"} ><Dashboard /></PrivateRoute>