Bash Mac получает авторизованный адрес электронной почты пользователя от GSuite в Chrome - PullRequest
0 голосов
/ 29 мая 2019

Я в компании, которая использует Mac, GSuite и Chome для всех. Я хочу получить адрес электронной почты пользователя, который обычно или "в данный момент" входит в Gmail в Chrome. Это также должно быть выполнено как сценарий входа или даже удаленно другим пользователем.

В настоящее время я делаю это:

#company domain
CompanyName=company.com

# return the user that is currently logged into laptop
loggedInUser=`/bin/ls -l /dev/console | /usr/bin/awk '{ print $3 }'`

# get email from chrome
LookInFile="/Users/$loggedInUser/Library/Application Support/Google/Chrome/Local State"
# Grep LookInFile for all email address and return the first one from CompanyName
Email=$(grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" "$LookInFile" | grep -m 1 $CompanyName)

Это фактически возвращает первого пользователя с электронным письмом от нашей компании, который вошел в Chrome (не Gmail). В основном это работает, но в некоторых случаях это не удается. В основном такие вещи, как пользователи, которые меняют свои адреса электронной почты (в основном, замужняя женщина). Вместо первого электронного письма я мог бы выбрать последнее электронное письмо с CompanyName, но чаще это происходит с делегатами и в некоторых других случаях.

Мне также интересно узнать, как использовать curl, но я не совсем уверен, как убедиться, что он работает от имени этого пользователя с его учетными данными в Chrome, а не в Safari. Некоторые из наших пользователей используют Safari для личной электронной почты, а Chrome - для разделения.

Мне интересно, кто-нибудь знает о более надежном способе сбора фактического адреса электронной почты пользователя с помощью скрипта Mac bash?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...