docs: def requires_authentication(fn):
          """
          Requires that the calling Subject be authenticated before allowing access.
          """
  
          @functools.wraps(fn)
          def wrap(*args, **kwargs):
              subject = WebYosai.get_current_subject()
  
              if not subject.authenticated:
                  msg = "The current Subject is not authenticated.  ACCESS DENIED."
                  raise WebYosai.get_current_webregistry().raise_unauthorized(msg)
  
              return fn(*args, **kwargs)
          return wrap