我认为您有 2 个选项:
1. 您只能限制您的 Google App 域的用户,转到管理 >> 应用程序设置 >> 身份验证类型。
2.“appengine/user”包只是给你基本的功能。您可以使用它来检查当前用户的电子邮件是否在允许列表中。
var allowed = []string{"tom@example.com", "jack@example.com"}
func handler(w http.ResponseWriter, r *http.Request) {
c := appengine.NewContext(r)
u := user.Current(c)
if u == nil {
url, err := user.LoginURL(c, r.URL.String())
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
w.Header().Set("Location", url)
w.WriteHeader(http.StatusFound)
return
}
var granted bool
for _, email := range allowed {
if u.Email == email {
granted = true
break;
}
}
if !granted {
http.Error(w, "you're not in the allowed list", 400)
return
}
fmt.Fprintf(w, "Hello, %v!", u)
}