1

我的 openstack 版本是 ocata。在我的计算机中,我安装了openstacksdk (0.9.18),当我使用它来创建一个 openstack 用户时,如下所示:

# create openstack user
user_args = {
    "default_project_id":new_project.id,  # the project is created already, there I did not post here.
    "email":email,
    "is_enabled":True,
    "name":username,  
    "pasword":password,  
}

try:
    new_user = super_conn.conn.identity.create_user(**user_args)
except Exception as e:
    raise e

try:
    role_user = super_conn.conn.identity.find_role(OPENSTACK_ROLE_USER) # there I find the role(user)
    new_project.assign_role_to_user(super_conn.conn.session, new_user, role_user)  # assign to the new user
    new_project.validate_user_has_role(super_conn.conn.session, new_user, role_user)
except Exception as e:
    raise e

我已经在我的代码中调试了usernameand password,我的代码没有错误。

我创建了 new_user,我还在 openstack 仪表板中检查了用户和用户的项目。但我无法使用用户名和密码登录 openstack 仪表板。

是否有什么问题?

该错误意味着凭据无效。所以,我使用 openstack admin 用户来更改创建用户的密码,然后我可以登录了。

4

1 回答 1

1

您没有提及有关用户角色的任何内容。也许问题是缺乏任何类型的角色。

于 2017-12-13T12:36:18.623 回答