| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- package casdoor
- import (
- "github.com/casdoor/casdoor-go-sdk/casdoorsdk"
- "go.uber.org/zap"
- "golang.org/x/oauth2"
- )
- const (
- endpoint string = "https://raspberrypi.dev/casdoor"
- clientId string = "f7059ed03570512cc79c"
- clientSecret string = "437e687903cce3d4aef50f5ab14f863faba41cad"
- certificate string = `
- -----BEGIN CERTIFICATE-----
- MIIE3TCCAsWgAwIBAgIDAeJAMA0GCSqGSIb3DQEBCwUAMCgxDjAMBgNVBAoTBWFk
- bWluMRYwFAYDVQQDEw1jZXJ0LWJ1aWx0LWluMB4XDTI1MDUwNzA5NDMwN1oXDTQ1
- MDUwNzA5NDMwN1owKDEOMAwGA1UEChMFYWRtaW4xFjAUBgNVBAMTDWNlcnQtYnVp
- bHQtaW4wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC6bhrTnADekQLx
- KtKiOqehyevrHzXKvBykfjwO6k0oLV9VSMntki2FNASDYTs3eFtG7wqPJoWJuDPC
- +XISWIwKc0Bc8trIeQkSiJOvLWF57wOX0HlxvGd6ooRrPe6yAHjMcMtNP5s+DzpO
- qfOIOCH9oOFBxHN02VIRoo+ACflI9mkS6TRIAJ8fG5L631qulyYwyq3TJ6vaBxte
- 1ZWV0Fh72VD3FaME9pmHdv3IcnX6U2pvwZoN+jSOiaTSCI15+5PFsC3av1k5ZJTH
- +Yp7okwVvQRJbwOwM4Lr3eQE7tcUVxLbstVKwhsR2EqtVHRlt+r0SUE72aASaM3m
- iWZS8lKJIJxbSRgtf3zOkpZR4zIBU3zdB9OoHykxLlbg4POOLloWMsdVflXbWzRt
- Abwo5SSsMq+Yr7+E4EB6ricXz1OvUPELEZa1c6QhTUzeBhrV5ro/QNNN32HCFgu4
- ivLxijF7FFGdxFykUArWxEd+d5+lCuHn8lDxYGBvp65G36f8knyOtN4K02cFoNtY
- 5l+s9yqkyELfw8it0bkxO609KZd9Xkp3wUloBMdiJ7UxUNIVS0bpL7wkwt/CzPdM
- Bm/RAPzkjazKgireWZ0cKv3QfYu4+QC8E7QeXI9Oqm6YCSMPsGJBOM9arA7xZdUc
- JZnNstHWHrFihbY1nG6WQwT8ndMYpwIDAQABoxAwDjAMBgNVHRMBAf8EAjAAMA0G
- CSqGSIb3DQEBCwUAA4ICAQAri/3HicFl5pu3B2udfdVgxmgUmf1nvPFhuiV7hgIP
- 5CVHe2IiDPJYGL55NNqYQpRLTE7Egnz6TMRiVuYKYBHLM2Tb133GpTvXntiwb+D/
- FSha4clBJBBHlx7lX8xGy+FIwlWQQzB/O8S1hbRi869Kb91QFIRgbRsW6Bt+0Y+9
- OtilWi5scqV28Lt2XyzxsQgsYAu0VOSxFs8Rk1WIvAAciefiPMGAlIpsm52c/0H+
- s1LqdPLoj+GF3/iMOd4EIRFGiH3ntdBqYjvf39w90uNn0uWBnVdyu8IsbNU92v84
- jdE7sTYMD74Q9rt9JH/dr2Z4ufjRSn6x7mRNxw3oPnMd5qdbB1ux8j5zrJAARRrQ
- QKju4s5SB+6WWjALhoMfO7N0wIqoKDleoaGxUj1r4AX9P+wRP0H1W2PV/H0y+el1
- gjpPCfs/IZGgWkSvpHI0b6yikTaCZeAgoBPB2sjTWZyeBnkXEM8BGgVjgaoFUwIl
- OgE9eIWpTKBvPYYellO+hB47j75BnIF7GImDBIwHvEtk7jw3psaLSYGGoNhcG5X9
- xJe+ghCvXu1cz5mvUxMIrUsbUL4zSCsJpkzQQQ+95ZJroGsl6dwewMY8hYhXo7wJ
- EikVj20dYSjAC2azqGic6fIDosE+qdT8zzCkmEOJQg42D1eRl+E2KmIThFpIyNp/
- Vw==
- -----END CERTIFICATE-----
- `
- organizationName string = "organization_franklinwh_toolbox"
- applicationName string = "app-franklinwh-toolbox"
- )
- func InitAuthConfig() {
- casdoorsdk.InitConfig(
- endpoint,
- clientId,
- clientSecret,
- certificate,
- organizationName,
- applicationName,
- )
- }
- func Signin(code, state string) (*oauth2.Token, error) {
- token, err := casdoorsdk.GetOAuthToken(code, state)
- if err != nil {
- zap.L().Error("GetOAuthToken() error", zap.String("err", err.Error()))
- return nil, err
- }
- return token, nil
- }
- func RefreshToken(refreshToken string) (*oauth2.Token, error) {
- token, err := casdoorsdk.RefreshOAuthToken(refreshToken)
- if err != nil {
- zap.L().Error("GetOAuthToken() error", zap.String("err", err.Error()))
- return nil, err
- }
- return token, nil
- }
- type CasdoorClaims = casdoorsdk.Claims
- func ParseJwtToken(token string) (*CasdoorClaims, error) {
- claims, err := casdoorsdk.ParseJwtToken(token)
- if err != nil {
- return nil, err
- }
- claims.AccessToken = token
- return claims, nil
- }
|