Ejemplo n.º 1
0
    def test_cant_revoke_other_users_keys(self):
        storage = CredentialStorage(self.plugin)
        other_key = create(Builder('service_key').having(user_id='other.user'))

        self.assertIn(other_key['key_id'], storage._service_keys)
        with self.assertRaises(Unauthorized):
            storage.revoke_service_key(TEST_USER_ID, other_key['key_id'])
Ejemplo n.º 2
0
    def test_revoke_service_key(self):
        storage = CredentialStorage(self.plugin)
        service_key = create(Builder('service_key'))

        self.assertIn(service_key['key_id'], storage._service_keys)
        storage.revoke_service_key(TEST_USER_ID, service_key['key_id'])
        self.assertNotIn(service_key['key_id'], storage._service_keys)
Ejemplo n.º 3
0
    def test_revoking_service_key_removes_associated_tokens(self):
        storage = CredentialStorage(self.plugin)

        service_key = create(Builder('service_key'))
        token = create(Builder('access_token').from_key(service_key))['token']

        self.assertTrue(storage.contains_access_token(token))

        storage.revoke_service_key(TEST_USER_ID, service_key['key_id'])
        self.assertFalse(storage.contains_access_token(token))
Ejemplo n.º 4
0
    def revoke_selected_keys(self):
        user_id = api.user.get_current().id
        selected_keys = self.request.form.get('selected_keys', [])

        storage = CredentialStorage(self.plugin)
        for key_id in selected_keys:
            storage.revoke_service_key(user_id, key_id)

        api.portal.show_message(_('Keys revoked.'), getRequest())
        return self.request.RESPONSE.redirect(self.main_url)