OpenStack keystoneclient получить пользователя по имени

Я знаю, что можно получить пользователя по идентификатору, но у меня есть только имя. Кто-нибудь знает, как получить пользователя по имени, используя keystone client v 2.0?

from keystoneclient.v2_0 import client
keystone = client.Client(username=USER,
                         password=PASS,
                         tenant_name=TENANT_NAME,
                         auth_url=KEYSTONE_URL)
user = keystone.users.get(USER_ID)

нужно что-то вроде следующего * * keystone.users.getByName (USER_NAME)

1 ответ

Придумал способ сделать это из keystoneclient. Вроде, как бы, что-то вроде.

Пример:

#!/usr/bin/env python

from keystoneclient.v2_0 import client
from keystoneclient import utils

keystone = client.Client(username='admin',
                         password='stack',
                         tenant_name='demo',
                         auth_url='http://192.168.122.236:5000/v2.0/')


def do_user_get(kc, args):
    """Display user details."""
    user = utils.find_resource(kc.users, args)
    utils.print_dict(user._info)

do_user_get (keystone, 'demo')

Использует утилиты в дополнение к client.users

В утилите есть несколько дополнительных функций синтаксического анализа, которые вы, возможно, захотите проверить.

Другие вопросы по тегам