code: def requires_user(fn):
          
          @functools.wraps(fn)
          def wrap(*args, **kwargs):
  
              subject = Yosai.get_current_subject()
  
              if subject.identifiers is None:
                  msg = ("Attempting to perform a user-only operation.  The "
                         "current Subject is NOT a user (they haven't been "
                         "authenticated or remembered from a previous login). "
                         "ACCESS DENIED.")
                  raise UnauthenticatedException(msg)
  
              return fn(*args, **kwargs)
          return wrap
docs: Requires that the calling Subject be *either* authenticated *or* remembered
          via RememberMe services before allowing access.
  
          This method essentially ensures that subject.identifiers IS NOT None
  
          :raises UnauthenticatedException: indicating that the decorated method is
                                            not allowed to be executed because the
                                            Subject attempted to perform a user-only
                                            operation