3

グーグルアプリのスクリプトで遊んでみてください。匿名モードでは問題ないようです。そのスニペットが示すように、誰でも私のスクリプトを呼び出すことができることを除いて:

curl "https://script.google.com/macros/s/.../exec?ip=\"$myIp\""

このマニュアルは、GoogleLoginを介して認証する方法のヒントとして使用しました。問題は、認証トークンを送信したときに受信した「401 Unauthorized」であり、「Me(owner)/Onlyyourself」オプションがGoogle側で設定されていました。(トークン自体は正しいようです。パスワードを省略したり、入力を間違えたりすると、「不正な認証」が表示されます)「誰でも、匿名でも」を再度設定すると、機能しますが、認証機能は無視されているようです。トリックを行う正しい方法は何ですか?

#!/bin/bash
gmail=$1
password=$2
myIp=$3
GoogleAuthToken=""
GoogleAuthToken=`curl --silent https://www.google.com/accounts/ClientLogin --data-urlencode Email=$gmail \
--data-urlencode Passwd=$password -d accountType=GOOGLE -d source=YouDontSay -d service=lh2`
echo $GoogleAuthToken
GoogleAuthToken=$(echo "$GoogleAuthToken" | grep 'Auth=' | sed  s/Auth=//)
echo $GoogleAuthToken 
curl -L --silent --header "Authorization: GoogleLogin auth=$GoogleAuthToken" "https://script.google.com/macros/s/.../exec?ip=\"$myIp\""
4

1 に答える 1

0

ClientLogin を使用します

https://www.google.com/accounts/ClientLogin

これはグーグルエラーです:

重要: ClientLogin は 2012 年 4 月 20 日以降、正式に廃止され、現在は使用できません。ClientLogin へのリクエストは、HTTP 404 レスポンスで失敗します。できるだけ早く OAuth 2.0 に移行することをお勧めします。

于 2016-02-24T09:25:18.683 に答える