code: def authenticated(viewfunc):
      
      @wraps(viewfunc)
      def wrapper(*args, **kwargs):
          ctx = stack.top
          if ctx and hasattr(ctx, 'htauth'):
              auth_header = request.headers.get('Authorization', None)
              if not auth_header:
                  return _unauthorized_response()
  
              if not auth_header.startswith('Basic '):
                  raise RuntimeError('Flask-HTAuth supports only Basic auth.')
  
              auth_header = auth_header.replace('Basic ', '')
              auth_header = base64.b64decode(auth_header)
              username, password = auth_header.split(':', 1)
  
              if not username in ctx.htauth['users']:
                  return _unauthorized_response()
  
              if not check_password(password, ctx.htauth['users'][username]):
                  return _unauthorized_response()
  
              g.htauth_user = username
  
          return viewfunc(*args, **kwargs)
  
      return wrapper
docs: Decorate **viewfunc** with this decorator to require HTTP auth on the
      view.