TLDR : у меня слабое приложение для управления частными каналами в его рабочей области разработки и токены для него, которые наследуют мои пользовательские привилегии. Как кто-то еще в том же рабочем пространстве может получить токены для этого приложения, которые вместо этого наследуют свои пользовательские привилегии?
Хорошо, поэтому фон таков: мне нужно управлять членством в группе частных каналов на основе более или менее сложных условий, связанных с ldap. Для этого я хотел написать простую программу на Python, которая получала членство в рассматриваемых каналах, использовала магию ldap, чтобы выяснить, кто должен быть где, и затем сделать это.
Я реализовал это, и пока все отлично работает. Проблема сейчас в том, что я (это мой слабый пользователь) не могу быть во всех этих каналах по соображениям конфиденциальности. Полученные мной API и бот-токены наследуют все мои собственные пользовательские привилегии. Это означает, что я не могу ни видеть, ни администрировать каналы, частью которых я не являюсь.
Исходя из того, что я прочитал в документации Slack API, есть способ заставить другого пользователя пройти через процесс OAuth для приложения, которое я создал, чтобы получить токены, получить свои собственные токены и использовать их с программа Python, которую я написал. Это было бы хорошо, но я не могу понять, как это сделать.
Никто другой не имеет прямого доступа к приложению. Документация создает впечатление, что мне нужно дать людям специально отформатированную ссылку («Добавить в слабую кнопку»), по которой они могут щелкнуть, чтобы пройти через процесс. Но это, кажется, требует «URL перенаправления». Я не уверен, что это такое, и документация не очень ясна, но кажется, что они предполагают, что приложение где-то работает на сервере и должно будет отвечать на запросы Slack или что-то в этом роде. Это не тот случай. Это довольно простой скрипт на Python, а не какое-то постоянно работающее облачное приложение, которое будет реагировать на Slack Events.
Так что я чувствую, что что-то упустил. Либо у меня есть какое-то фундаментальное неправильное представление о том, как это должно работать, либо у кого-то есть простой способ получить такой токен, а я его не вижу.