Получить всех пользователей указанных групп с Tableau Server с помощью TableauServerClient.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получить всех пользователей указанных групп с Tableau Server с помощью TableauServerClient.

Сообщение Anonymous »

Я хотел бы получить список всех пользователей для трех групп AD на нашем сайте сервера Tableau с помощью пакета TSC. Судя по некоторым ресурсам, я использую Python, как показано ниже.
Первый фрагмент кода возвращает всех пользователей на нашем сайте и экспортирует список в Excel. Второй фрагмент — это моя попытка применить фильтр, который возвращает только пользователей из трех групп AD, но возвращает 0 пользователей.
Наш сайт использует группы AD для предоставления доступа. Мне нужно проверить, имеют ли члены этих трех групп доступ к источнику данных, который использует панель мониторинга. План состоит в том, чтобы получить список пользователей с сервера Tableau и объединить список групп со списком пользователей, имеющих доступ к источнику данных, чтобы вернуть выходные данные, которые будут отмечать экземпляры, в которых я получаю лево только в _merge.Будем очень признательны за любой вклад.
Возвращает всех пользователей на сайт.
import tableauserverclient as TSC
import pandas as pd

tableau_auth = TSC.PersonalAccessTokenAuth('Y14_Dashboard_Update','access-token-xyz',site_id = 'site-name')
server = TSC.Server('https://tableau-site/',use_server_version=True)

with server.auth.sign_in(tableau_auth):

request_options = TSC.RequestOptions(pagesize=1000)

all_users, pagination_item = server.users.get(request_options)

print("\nThere are {} user on site: ".format(pagination_item.total_available))

all_users_on_site = pd.DataFrame({'Users': [user.name for user in all_users]})

all_users_on_site.to_excel(r"C:\\Users\TABLEAU_User_ME\Documents\Projects\Tableau_Users.xlsx", index = False)

Изменено для фильтрации по 3 группам; возвращает 0 пользователей.
import tableauserverclient as TSC
import pandas as pd

tableau_auth = TSC.PersonalAccessTokenAuth('Y14_Dashboard_Update','access-token-xyz',site_id = 'site-name')
server = TSC.Server('https://tableau-server-site/',use_server_version=True)

with server.auth.sign_in(tableau_auth):

request_options = TSC.RequestOptions(pagesize=1000)
request_options.filter.add(TSC.Filter(TSC.RequestOptions.Field.Name,
TSC.RequestOptions.Operator.In,
["AD-Group1","AD-Group2", "AD-Group3"],)
)
matching_groups, pagination_item = server.users.get(request_options)

print("\nThere are {} user on site: ".format(pagination_item.total_available))
all_users_on_site = pd.DataFrame({'Users': [user.name for user in matching_groups]})

all_users_on_site.to_excel(r"C:\\Users\TABLEAU_User_ME\Documents\Projects\Tableau_Users.xlsx", index = False)


Подробнее здесь: https://stackoverflow.com/questions/789 ... rverclient
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»