Exemplo n.º 1
0
    def test_token_scope_argument(self):
        # Invalid token_scope value
        expected_msg = 'Invalid value for "token_scope" argument: foo'
        assertRaisesRegex(
            self,
            ValueError,
            expected_msg,
            OpenStackIdentity_3_0_Connection,
            auth_url="http://none",
            user_id="test",
            key="test",
            token_scope="foo",
        )

        # Missing tenant_name
        expected_msg = "Must provide tenant_name and domain_name argument"
        assertRaisesRegex(
            self,
            ValueError,
            expected_msg,
            OpenStackIdentity_3_0_Connection,
            auth_url="http://none",
            user_id="test",
            key="test",
            token_scope="project",
        )

        # Missing domain_name
        expected_msg = "Must provide domain_name argument"
        assertRaisesRegex(
            self,
            ValueError,
            expected_msg,
            OpenStackIdentity_3_0_Connection,
            auth_url="http://none",
            user_id="test",
            key="test",
            token_scope="domain",
            domain_name=None,
        )

        # Scope to project all ok
        OpenStackIdentity_3_0_Connection(
            auth_url="http://none",
            user_id="test",
            key="test",
            token_scope="project",
            tenant_name="test",
            domain_name="Default",
        )
        # Scope to domain
        OpenStackIdentity_3_0_Connection(
            auth_url="http://none",
            user_id="test",
            key="test",
            token_scope="domain",
            tenant_name=None,
            domain_name="Default",
        )
Exemplo n.º 2
0
    def test_token_scope_argument(self):
        # Invalid token_scope value
        expected_msg = 'Invalid value for "token_scope" argument: foo'
        assertRaisesRegex(self,
                          ValueError,
                          expected_msg,
                          OpenStackIdentity_3_0_Connection,
                          auth_url='http://none',
                          user_id='test',
                          key='test',
                          token_scope='foo')

        # Missing tenant_name
        expected_msg = 'Must provide tenant_name and domain_name argument'
        assertRaisesRegex(self,
                          ValueError,
                          expected_msg,
                          OpenStackIdentity_3_0_Connection,
                          auth_url='http://none',
                          user_id='test',
                          key='test',
                          token_scope='project')

        # Missing domain_name
        expected_msg = 'Must provide domain_name argument'
        assertRaisesRegex(self,
                          ValueError,
                          expected_msg,
                          OpenStackIdentity_3_0_Connection,
                          auth_url='http://none',
                          user_id='test',
                          key='test',
                          token_scope='domain',
                          domain_name=None)

        # Scope to project all ok
        OpenStackIdentity_3_0_Connection(auth_url='http://none',
                                         user_id='test',
                                         key='test',
                                         token_scope='project',
                                         tenant_name='test',
                                         domain_name='Default')
        # Scope to domain
        OpenStackIdentity_3_0_Connection(auth_url='http://none',
                                         user_id='test',
                                         key='test',
                                         token_scope='domain',
                                         tenant_name=None,
                                         domain_name='Default')
Exemplo n.º 3
0
 def test_authenticate(self):
     auth = OpenStackIdentity_3_0_Connection(auth_url='http://none',
                                             user_id='test_user_id',
                                             key='test_key',
                                             token_scope='project',
                                             tenant_name="test_tenant",
                                             domain_name='test_domain')
     auth.authenticate()
Exemplo n.º 4
0
 def test_libcloud_auth_v3(self):
     driver = OpenStackIdentity_3_0_Connection(auth_url='http://localhost:5000',
                                               user_id='admin',
                                               key='adminpass',
                                               token_scope=OpenStackIdentityTokenScope.PROJECT,
                                               domain_name='Default',
                                               tenant_name='admin')
     driver.authenticate()
     self.assertTrue(driver.auth_token)
Exemplo n.º 5
0
    def setUp(self):
        mock_cls = OpenStackIdentity_3_0_MockHttp
        mock_cls.type = None
        OpenStackIdentity_3_0_Connection.conn_class = mock_cls

        self.auth_instance = OpenStackIdentity_3_0_Connection(auth_url='http://none',
                                                              user_id='test',
                                                              key='test',
                                                              tenant_name='test')
        self.auth_instance.auth_token = 'mock'
 def test_authenticate(self):
     auth = OpenStackIdentity_3_0_Connection(auth_url='http://none',
                                             user_id='test_user_id',
                                             key='test_key',
                                             token_scope='project',
                                             tenant_name="test_tenant",
                                             domain_name='test_domain',
                                             proxy_url='http://proxy:8080',
                                             timeout=10)
     auth.authenticate()
     self.assertEqual(auth.proxy_url, 'http://proxy:8080')
Exemplo n.º 7
0
    def libcloud_validate_auth(self, auth_url, username, password, project_name, domain, request):
        driver = OpenStackIdentity_3_0_Connection(
            auth_url=auth_url+"/auth/tokens",
            user_id=username, key=password,  #TODO: add domain
            token_scope=OpenStackIdentityTokenScope.PROJECT, tenant_name=project_name)

        try:
            conn = driver.authenticate()
            auth_token = driver.auth_token
            return self._update_token(auth_url, username, auth_token, request)
        except:
            logger.exception("Error validating libcloud auth by password")
            return None
    def setUp(self):
        mock_cls = OpenStackIdentity_3_0_MockHttp
        mock_cls.type = None
        OpenStackIdentity_3_0_Connection.conn_class = mock_cls

        self.auth_instance = OpenStackIdentity_3_0_Connection(auth_url='http://none',
                                                              user_id='test',
                                                              key='test',
                                                              tenant_name='test',
                                                              proxy_url='http://proxy:8080',
                                                              timeout=10)
        self.auth_instance.auth_token = 'mock'
        self.assertEqual(self.auth_instance.proxy_url, 'http://proxy:8080')
Exemplo n.º 9
0
 def test_authenticate(self):
     auth = OpenStackIdentity_3_0_Connection(
         auth_url="http://none",
         user_id="test_user_id",
         key="test_key",
         token_scope="project",
         tenant_name="test_tenant",
         tenant_domain_id="test_tenant_domain_id",
         domain_name="test_domain",
         proxy_url="http://proxy:8080",
         timeout=10,
     )
     auth.authenticate()
     self.assertEqual(auth.proxy_url, "http://proxy:8080")
Exemplo n.º 10
0
    def setUp(self):
        mock_cls = OpenStackIdentity_3_0_MockHttp
        mock_cls.type = None
        OpenStackIdentity_3_0_Connection.conn_class = mock_cls

        self.auth_instance = OpenStackIdentity_3_0_Connection(
            auth_url="http://none",
            user_id="test",
            key="test",
            tenant_name="test",
            proxy_url="http://proxy:8080",
            timeout=10,
        )
        self.auth_instance.auth_token = "mock"
        self.assertEqual(self.auth_instance.proxy_url, "http://proxy:8080")