message: check for access before requesting access
diff: @@ -842,6 +842,15 @@ class Superset(BaseSupersetView):
  .one()
  )
  datasources.add(datasource)
  +
  + has_access = all(
  + (
  + datasource and self.datasource_access(datasource)
  + for datasource in datasources
  + ))
  + if has_access:
  + return redirect('/superset/dashboard/{}'.format(dashboard_id))
  +
  if request.args.get('action') == 'go':
  for datasource in datasources:
  access_request = DAR(
  