appview/oauth: support custom PLC directory #704

closed
opened by boltless.me targeting master from sandboxed-atmosphere
  • inherit idResolver's PLC directory for oauth
  • override Client.Transport to support PDS served in localhost

Signed-off-by: Seongmin Lee git@boltless.me

Changed files
+10 -1
appview
oauth
state
+9 -1
appview/oauth/oauth.go
··· 58 58 59 59 sessStore := sessions.NewCookieStore([]byte(config.Core.CookieSecret)) 60 60 61 + clientApp := oauth.NewClientApp(&oauthConfig, authStore) 62 + // use same plc directory from idresolver 63 + clientApp.Dir = res.Directory() 64 + // allow non-public transports in dev mode 65 + if config.Core.Dev { 66 + clientApp.Resolver.Client.Transport = http.DefaultTransport 67 + } 68 + 61 69 return &OAuth{ 62 - ClientApp: oauth.NewClientApp(&oauthConfig, authStore), 70 + ClientApp: clientApp, 63 71 Config: config, 64 72 SessStore: sessStore, 65 73 JwksUri: jwksUri,
+1
appview/state/login.go
··· 44 44 45 45 redirectURL, err := s.oauth.ClientApp.StartAuthFlow(r.Context(), handle) 46 46 if err != nil { 47 + l.Error("failed to start auth", "err", err) 47 48 http.Error(w, err.Error(), http.StatusInternalServerError) 48 49 return 49 50 }