diff --git a/idp/adfs.go b/idp/adfs.go index e6bdc260..6e01fa40 100644 --- a/idp/adfs.go +++ b/idp/adfs.go @@ -19,7 +19,7 @@ import ( "crypto/tls" "encoding/json" "fmt" - "io" + "io/ioutil" "net/http" "net/url" "time" @@ -88,7 +88,7 @@ func (idp *AdfsIdProvider) GetToken(code string) (*oauth2.Token, error) { if err != nil { return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/baidu.go b/idp/baidu.go index b0e2ba17..f44040b4 100644 --- a/idp/baidu.go +++ b/idp/baidu.go @@ -18,7 +18,7 @@ import ( "context" "encoding/json" "fmt" - "io" + "io/ioutil" "net/http" "golang.org/x/oauth2" @@ -97,7 +97,7 @@ func (idp *BaiduIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/casdoor.go b/idp/casdoor.go index 290459a9..9ec5d093 100644 --- a/idp/casdoor.go +++ b/idp/casdoor.go @@ -17,7 +17,6 @@ package idp import ( "encoding/json" "fmt" - "io" "io/ioutil" "net/http" "net/url" @@ -133,7 +132,7 @@ func (idp *CasdoorIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/dingtalk.go b/idp/dingtalk.go index 5de7a480..c4a553fc 100644 --- a/idp/dingtalk.go +++ b/idp/dingtalk.go @@ -18,6 +18,7 @@ import ( "encoding/json" "fmt" "io" + "io/ioutil" "net/http" "strings" "time" @@ -143,7 +144,7 @@ func (idp *DingTalkIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, erro return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -178,7 +179,7 @@ func (idp *DingTalkIdProvider) postWithBody(body interface{}, url string) ([]byt if err != nil { return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/gitee.go b/idp/gitee.go index 2bd426e7..c7896d24 100644 --- a/idp/gitee.go +++ b/idp/gitee.go @@ -19,6 +19,7 @@ import ( "encoding/json" "fmt" "io" + "io/ioutil" "net/http" "net/url" "strconv" @@ -92,7 +93,7 @@ func (idp *GiteeIdProvider) GetToken(code string) (*oauth2.Token, error) { if err != nil { return nil, err } - rbs, err := io.ReadAll(resp.Body) + rbs, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/github.go b/idp/github.go index 1cee2a44..9521becf 100644 --- a/idp/github.go +++ b/idp/github.go @@ -17,7 +17,7 @@ package idp import ( "context" "encoding/json" - "io" + "io/ioutil" "net/http" "strconv" "time" @@ -172,7 +172,7 @@ func (idp *GithubIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) defer resp.Body.Close() - body, err := io.ReadAll(resp.Body) + body, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/gitlab.go b/idp/gitlab.go index 445bc4fa..14ba8bd2 100644 --- a/idp/gitlab.go +++ b/idp/gitlab.go @@ -17,7 +17,7 @@ package idp import ( "encoding/json" "fmt" - "io" + "io/ioutil" "net/http" "net/url" "strconv" @@ -85,7 +85,7 @@ func (idp *GitlabIdProvider) GetToken(code string) (*oauth2.Token, error) { return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -209,7 +209,7 @@ func (idp *GitlabIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/google.go b/idp/google.go index 5357c34a..d4fbb1e0 100644 --- a/idp/google.go +++ b/idp/google.go @@ -19,7 +19,7 @@ import ( "encoding/json" "errors" "fmt" - "io" + "io/ioutil" "net/http" "golang.org/x/oauth2" @@ -95,7 +95,7 @@ func (idp *GoogleIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) } defer resp.Body.Close() - body, err := io.ReadAll(resp.Body) + body, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/infoflow_internal.go b/idp/infoflow_internal.go index 01be1fe9..b7d7f4e8 100644 --- a/idp/infoflow_internal.go +++ b/idp/infoflow_internal.go @@ -17,7 +17,7 @@ package idp import ( "encoding/json" "fmt" - "io" + "io/ioutil" "net/http" "golang.org/x/oauth2" @@ -69,7 +69,7 @@ func (idp *InfoflowInternalIdProvider) GetToken(code string) (*oauth2.Token, err return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -147,7 +147,7 @@ func (idp *InfoflowInternalIdProvider) GetUserInfo(token *oauth2.Token) (*UserIn return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -165,7 +165,7 @@ func (idp *InfoflowInternalIdProvider) GetUserInfo(token *oauth2.Token) (*UserIn return nil, err } - data, err = io.ReadAll(resp.Body) + data, err = ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/infoflow_third_party.go b/idp/infoflow_third_party.go index fd1d60f9..6999f193 100644 --- a/idp/infoflow_third_party.go +++ b/idp/infoflow_third_party.go @@ -18,6 +18,7 @@ import ( "encoding/json" "fmt" "io" + "io/ioutil" "net/http" "strings" "time" @@ -143,7 +144,7 @@ func (idp *InfoflowIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, erro return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -161,7 +162,7 @@ func (idp *InfoflowIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, erro return nil, err } - data, err = io.ReadAll(resp.Body) + data, err = ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -196,7 +197,7 @@ func (idp *InfoflowIdProvider) postWithBody(body interface{}, url string) ([]byt if err != nil { return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/lark.go b/idp/lark.go index 48a5efe1..05a65d53 100644 --- a/idp/lark.go +++ b/idp/lark.go @@ -17,6 +17,7 @@ package idp import ( "encoding/json" "io" + "io/ioutil" "net/http" "strings" "time" @@ -168,7 +169,7 @@ func (idp *LarkIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) { req.Header.Set("Authorization", "Bearer "+token.AccessToken) resp, err := idp.Client.Do(req) - data, err = io.ReadAll(resp.Body) + data, err = ioutil.ReadAll(resp.Body) err = resp.Body.Close() if err != nil { return nil, err @@ -200,7 +201,7 @@ func (idp *LarkIdProvider) postWithBody(body interface{}, url string) ([]byte, e if err != nil { return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/linkedin.go b/idp/linkedin.go index 5124ba00..60f75432 100644 --- a/idp/linkedin.go +++ b/idp/linkedin.go @@ -18,6 +18,7 @@ import ( "encoding/json" "fmt" "io" + "io/ioutil" "net/http" "net/url" "strings" @@ -84,7 +85,7 @@ func (idp *LinkedInIdProvider) GetToken(code string) (*oauth2.Token, error) { if err != nil { return nil, err } - rbs, err := io.ReadAll(resp.Body) + rbs, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -322,7 +323,7 @@ func (idp *LinkedInIdProvider) GetUrlRespWithAuthorization(url, token string) ([ } }(resp.Body) - bs, err := io.ReadAll(resp.Body) + bs, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/qq.go b/idp/qq.go index e37745cf..16ed98b7 100644 --- a/idp/qq.go +++ b/idp/qq.go @@ -18,7 +18,7 @@ import ( "encoding/json" "errors" "fmt" - "io" + "io/ioutil" "net/http" "net/url" "regexp" @@ -75,7 +75,7 @@ func (idp *QqIdProvider) GetToken(code string) (*oauth2.Token, error) { } defer resp.Body.Close() - tokenContent, err := io.ReadAll(resp.Body) + tokenContent, err := ioutil.ReadAll(resp.Body) re := regexp.MustCompile("token=(.*?)&") matched := re.FindAllStringSubmatch(string(tokenContent), -1) @@ -145,7 +145,7 @@ func (idp *QqIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) { } defer resp.Body.Close() - openIdBody, err := io.ReadAll(resp.Body) + openIdBody, err := ioutil.ReadAll(resp.Body) re := regexp.MustCompile("\"openid\":\"(.*?)\"}") matched := re.FindAllStringSubmatch(string(openIdBody), -1) @@ -161,7 +161,7 @@ func (idp *QqIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, error) { } defer resp.Body.Close() - userInfoBody, err := io.ReadAll(resp.Body) + userInfoBody, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/wecom_internal.go b/idp/wecom_internal.go index a5665316..1f80fc62 100644 --- a/idp/wecom_internal.go +++ b/idp/wecom_internal.go @@ -17,7 +17,7 @@ package idp import ( "encoding/json" "fmt" - "io" + "io/ioutil" "net/http" "time" @@ -72,7 +72,7 @@ func (idp *WeComInternalIdProvider) GetToken(code string) (*oauth2.Token, error) return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -122,7 +122,7 @@ func (idp *WeComInternalIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } @@ -143,7 +143,7 @@ func (idp *WeComInternalIdProvider) GetUserInfo(token *oauth2.Token) (*UserInfo, return nil, err } - data, err = io.ReadAll(resp.Body) + data, err = ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/wecom_third_party.go b/idp/wecom_third_party.go index 41f78985..3f5ac9a2 100644 --- a/idp/wecom_third_party.go +++ b/idp/wecom_third_party.go @@ -18,6 +18,7 @@ import ( "encoding/json" "fmt" "io" + "io/ioutil" "net/http" "strings" "time" @@ -194,7 +195,7 @@ func (idp *WeComIdProvider) postWithBody(body interface{}, url string) ([]byte, if err != nil { return nil, err } - data, err := io.ReadAll(resp.Body) + data, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/idp/weibo.go b/idp/weibo.go index 3082974d..fce2fa6d 100644 --- a/idp/weibo.go +++ b/idp/weibo.go @@ -19,6 +19,7 @@ import ( "encoding/json" "fmt" "io" + "io/ioutil" "net/http" "net/url" "strconv" @@ -91,7 +92,7 @@ func (idp *WeiBoIdProvider) GetToken(code string) (*oauth2.Token, error) { return } }(resp.Body) - bs, err := io.ReadAll(resp.Body) + bs, err := ioutil.ReadAll(resp.Body) if err != nil { return nil, err } diff --git a/object/init.go b/object/init.go index 52d07106..3de10fe9 100644 --- a/object/init.go +++ b/object/init.go @@ -15,17 +15,11 @@ package object import ( - _ "embed" + "io/ioutil" "github.com/casdoor/casdoor/util" ) -//go:embed token_jwt_key.pem -var tokenJwtPublicKey string - -//go:embed token_jwt_key.key -var tokenJwtPrivateKey string - func InitDb() { initBuiltInOrganization() initBuiltInUser() @@ -122,7 +116,22 @@ func initBuiltInApplication() { AddApplication(application) } +func readTokenFromFile() (string, string) { + pemPath := "./object/token_jwt_key.pem" + keyPath := "./object/token_jwt_key.key" + pem, err := ioutil.ReadFile(pemPath) + if err != nil { + return "", "" + } + key, err := ioutil.ReadFile(keyPath) + if err != nil { + return "", "" + } + return string(pem), string(key) +} + func initBuiltInCert() { + tokenJwtPublicKey, tokenJwtPrivateKey := readTokenFromFile() cert := getCert("admin", "cert-built-in") if cert != nil { return diff --git a/object/token_jwt.go b/object/token_jwt.go index fc23036a..7fe0e752 100644 --- a/object/token_jwt.go +++ b/object/token_jwt.go @@ -15,7 +15,6 @@ package object import ( - _ "embed" "fmt" "time" diff --git a/util/string.go b/util/string.go index 6eb39282..afe02458 100644 --- a/util/string.go +++ b/util/string.go @@ -20,7 +20,7 @@ import ( "encoding/hex" "errors" "fmt" - "os" + "io/ioutil" "strconv" "strings" "time" @@ -162,7 +162,7 @@ func GetMinLenStr(strs ...string) string { } func ReadStringFromPath(path string) string { - data, err := os.ReadFile(path) + data, err := ioutil.ReadFile(path) if err != nil { panic(err) } @@ -171,7 +171,7 @@ func ReadStringFromPath(path string) string { } func WriteStringToPath(s string, path string) { - err := os.WriteFile(path, []byte(s), 0644) + err := ioutil.WriteFile(path, []byte(s), 0644) if err != nil { panic(err) }