我正在嘗試使用加密密碼連接到 Tableau Server。通常的連接命令是:
tabcmd login -u user -p password
我已經加密了一個密碼,并使用以下腳本將其存盤到一個文本檔案中。
echo "strongpw" | openssl enc -aes-256-cbc -md sha512 -a -pbkdf2 -iter 100000 \
-salt -pass pass:Secret@123# > secret.txt
- strongpw 是我想加密的字串
- Secret@123# 是加密時使用的密碼
完成后,我有一個 secret.txt 檔案,內容如下:
U2FsdGVkX1/VyNZZ/RTaymM4F5DHNNG0iYapp3u3 WI=
然后我可以使用以下腳本來解密我的密碼:
cat secret.txt | openssl enc -aes-256-cbc -md sha512 -a -d -pbkdf2 -iter 100000 \
-salt -pass pass:Secret@123#
輸出:strongpw
最后,我創建了一個 .sh 腳本,用戶可能會執行該腳本以連接到服務器。該腳本應該解密密碼并將其存盤在變數中。
#bin/bash
USERNAME=test
PASSWD=`cat secret.txt | openssl enc -aes-256-cbc -md sha512 -a -d -pbkdf2 \
-iter 100000 -salt -pass pass:Secret@123#`
tabcmd login -u $USERNAME -p $PASSWD
然后我使我的腳本可執行 chmod x
不幸的是,在嘗試運行時,我總是遇到錯誤invalid argument或extra arguments given錯誤。
關于如何解決這個問題的任何建議?
謝謝!
uj5u.com熱心網友回復:
也許您可以嘗試使用“-in”標簽來提供輸入檔案而不是使用 cat?
uj5u.com熱心網友回復:
感謝@MarcoLucidi 向我展示了 shellcheck.net :)
這是我必須修改我的 .sh 檔案以使其作業的方法:
#bin/bash
USERNAME=test
var=$(cat secret.txt | openssl enc -aes-256-cbc -md sha512 -a -d -pbkdf2 -iter 100000 \
-salt -pass pass:Secret@123#)
tabcmd login -u “$USERNAME” -p “$var”
tabcmd runschedule "PMS Daily 6AM"
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/373570.html
標籤:贝壳
