Exemplo n.º 1
0
    def post(self):
        """Returns auth token for get method."""
        session = gaeserver.DoMunkiAuth()

        asd = gaeserver.AuthSessionSimianServer()
        token = None
        for s in asd.GetByUuid(session.uuid):
            if s.level != gaeserver.LEVEL_APPLESUS:
                continue
            if asd.IsExpired(s):
                continue

            assert s.key().name().startswith('t_')
            token = s.key().name()[2:]

        if not token:
            auth1 = gaeserver.AuthSimianServer()
            # create new token suitable only for applesus.
            # original token will be destroyed on postflight.
            token = auth1.SessionCreateUserAuthToken(
                session.uuid, level=gaeserver.LEVEL_APPLESUS)

        munki_header = self.request.headers.get(MUNKI_CLIENT_ID_HEADER_KEY, '')
        # Also store munki header, which contain OS X version and track.
        d = {
            'cookies': auth.CreateAuthTokenCookieStr(token),
            'header': self._SanitazeMunkiHeader(munki_header),
        }

        self.response.out.write(_EncodeMsg(d))
Exemplo n.º 2
0
 def testLogoutSession(self):
   """Test LogoutSession."""
   session = 'foo'
   self.mox.StubOutWithMock(gaeserver, 'AuthSessionSimianServer', True)
   mock_session = self.mox.CreateMockAnything()
   gaeserver.AuthSessionSimianServer().AndReturn(mock_session)
   mock_session.Delete(session).AndReturn(None)
   self.mox.ReplayAll()
   gaeserver.LogoutSession(session)
   self.mox.VerifyAll()
Exemplo n.º 3
0
  def _TestExpireOneSession(self, session_prefix, session_age_seconds):
    """Test ExpireOne() with a token session item.

    Args:
      session_prefix: str, like 'foo_'
      session_age_seconds: int, allowable session age data seconds
    """
    session = models.AuthSession(
        mtime=datetime.datetime.utcnow() - datetime.timedelta(
            seconds=session_age_seconds),
        key_name=session_prefix + '123')
    session.put()

    asd = gaeserver.AuthSessionSimianServer()
    self.assertEqual(True, asd.ExpireOne(session))

    self.assertEqual(0, len(models.AuthSession.all().fetch(None)))
Exemplo n.º 4
0
  def _RemoveExpiredAuthSessions(cls, prefix, level, min_age_seconds, cursor):
    """Expire all session data."""
    asd = gaeserver.AuthSessionSimianServer()

    query = asd.All(level=level, min_age_seconds=min_age_seconds, cursor=cursor)
    sessions = query.fetch(settings.ENTITIES_PER_DEFERRED_TASK)

    if not sessions:
      return

    # expire all certs that are over min expiration age.
    for session in sessions:
      if asd.IsExpired(session):
        session.delete()

    cls._DeferRemoveExpiredAuthSessions(
        prefix, level, min_age_seconds, cursor=query.cursor())
Exemplo n.º 5
0
 def get(self):
   """Handle GET"""
   asd = gaeserver.AuthSessionSimianServer()
   expired_sessions_count = asd.ExpireAll()
Exemplo n.º 6
0
  def setUp(self):
    super(test.AppengineTest, self).setUp()

    mox.MoxTestBase.setUp(self)
    self.stubs = stubout.StubOutForTesting()
    self.asps = gaeserver.AuthSessionSimianServer()
Exemplo n.º 7
0
 def setUp(self):
   mox.MoxTestBase.setUp(self)
   self.stubs = stubout.StubOutForTesting()
   self.asps = gaeserver.AuthSessionSimianServer()