mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-23 02:35:49 +08:00
Add GetMaskedProvider() and GetMaskedProviders().
This commit is contained in:
parent
3efbcc739d
commit
7cfece3019
@ -206,7 +206,15 @@ func (c *ApiController) Login() {
|
|||||||
}
|
}
|
||||||
} else if provider.Category == "OAuth" {
|
} else if provider.Category == "OAuth" {
|
||||||
// OAuth
|
// OAuth
|
||||||
idProvider := idp.GetIdProvider(provider.Type, provider.ClientId, provider.ClientSecret, form.RedirectUri)
|
|
||||||
|
clientId := provider.ClientId
|
||||||
|
clientSecret := provider.ClientSecret
|
||||||
|
if provider.Type == "WeChat" && strings.Contains(c.Ctx.Request.UserAgent(), "MicroMessenger") {
|
||||||
|
clientId = provider.ClientId2
|
||||||
|
clientSecret = provider.ClientSecret2
|
||||||
|
}
|
||||||
|
|
||||||
|
idProvider := idp.GetIdProvider(provider.Type, clientId, clientSecret, form.RedirectUri)
|
||||||
if idProvider == nil {
|
if idProvider == nil {
|
||||||
c.ResponseError(fmt.Sprintf("The provider type: %s is not supported", provider.Type))
|
c.ResponseError(fmt.Sprintf("The provider type: %s is not supported", provider.Type))
|
||||||
return
|
return
|
||||||
|
@ -34,12 +34,12 @@ func (c *ApiController) GetProviders() {
|
|||||||
limit := c.Input().Get("pageSize")
|
limit := c.Input().Get("pageSize")
|
||||||
page := c.Input().Get("p")
|
page := c.Input().Get("p")
|
||||||
if limit == "" || page == "" {
|
if limit == "" || page == "" {
|
||||||
c.Data["json"] = object.GetProviders(owner)
|
c.Data["json"] = object.GetMaskedProviders(object.GetProviders(owner))
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
} else {
|
} else {
|
||||||
limit := util.ParseInt(limit)
|
limit := util.ParseInt(limit)
|
||||||
paginator := pagination.SetPaginator(c.Ctx, limit, int64(object.GetProviderCount(owner)))
|
paginator := pagination.SetPaginator(c.Ctx, limit, int64(object.GetProviderCount(owner)))
|
||||||
providers := object.GetPaginationProviders(owner, paginator.Offset(), limit)
|
providers := object.GetMaskedProviders(object.GetPaginationProviders(owner, paginator.Offset(), limit))
|
||||||
c.ResponseOk(providers, paginator.Nums())
|
c.ResponseOk(providers, paginator.Nums())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -53,7 +53,7 @@ func (c *ApiController) GetProviders() {
|
|||||||
func (c *ApiController) GetProvider() {
|
func (c *ApiController) GetProvider() {
|
||||||
id := c.Input().Get("id")
|
id := c.Input().Get("id")
|
||||||
|
|
||||||
c.Data["json"] = object.GetProvider(id)
|
c.Data["json"] = object.GetMaskedProvider(object.GetProvider(id))
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,7 +88,7 @@ func getProviderMap(owner string) map[string]*Provider {
|
|||||||
// continue
|
// continue
|
||||||
//}
|
//}
|
||||||
|
|
||||||
m[provider.Name] = getMaskedProvider(provider)
|
m[provider.Name] = GetMaskedProvider(provider)
|
||||||
}
|
}
|
||||||
return m
|
return m
|
||||||
}
|
}
|
||||||
|
@ -58,18 +58,26 @@ type Provider struct {
|
|||||||
ProviderUrl string `xorm:"varchar(200)" json:"providerUrl"`
|
ProviderUrl string `xorm:"varchar(200)" json:"providerUrl"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func getMaskedProvider(provider *Provider) *Provider {
|
func GetMaskedProvider(provider *Provider) *Provider {
|
||||||
p := &Provider{
|
if provider == nil {
|
||||||
Owner: provider.Owner,
|
return nil
|
||||||
Name: provider.Name,
|
|
||||||
CreatedTime: provider.CreatedTime,
|
|
||||||
DisplayName: provider.DisplayName,
|
|
||||||
Category: provider.Category,
|
|
||||||
Type: provider.Type,
|
|
||||||
Method: provider.Method,
|
|
||||||
ClientId: provider.ClientId,
|
|
||||||
}
|
}
|
||||||
return p
|
|
||||||
|
if provider.ClientSecret != "" {
|
||||||
|
provider.ClientSecret = "***"
|
||||||
|
}
|
||||||
|
if provider.ClientSecret2 != "" {
|
||||||
|
provider.ClientSecret2 = "***"
|
||||||
|
}
|
||||||
|
|
||||||
|
return provider
|
||||||
|
}
|
||||||
|
|
||||||
|
func GetMaskedProviders(providers []*Provider) []*Provider {
|
||||||
|
for _, provider := range providers {
|
||||||
|
provider = GetMaskedProvider(provider)
|
||||||
|
}
|
||||||
|
return providers
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetProviderCount(owner string) int {
|
func GetProviderCount(owner string) int {
|
||||||
|
@ -201,7 +201,7 @@ export function getAuthUrl(application, provider, method) {
|
|||||||
return `${endpoint}?client_id=${provider.clientId}&redirect_uri=${redirectUri}&scope=${scope}&response_type=code&state=${state}`;
|
return `${endpoint}?client_id=${provider.clientId}&redirect_uri=${redirectUri}&scope=${scope}&response_type=code&state=${state}`;
|
||||||
} else if (provider.type === "WeChat") {
|
} else if (provider.type === "WeChat") {
|
||||||
if (navigator.userAgent.includes("MicroMessenger")) {
|
if (navigator.userAgent.includes("MicroMessenger")) {
|
||||||
return `${authInfo[provider.type].mpEndpoint}?appid=${provider.clientId}&redirect_uri=${redirectUri}&state=${state}&scope=${authInfo[provider.type].mpScope}&response_type=code#wechat_redirect`;
|
return `${authInfo[provider.type].mpEndpoint}?appid=${provider.clientId2}&redirect_uri=${redirectUri}&state=${state}&scope=${authInfo[provider.type].mpScope}&response_type=code#wechat_redirect`;
|
||||||
} else {
|
} else {
|
||||||
return `${endpoint}?appid=${provider.clientId}&redirect_uri=${redirectUri}&scope=${scope}&response_type=code&state=${state}#wechat_redirect`;
|
return `${endpoint}?appid=${provider.clientId}&redirect_uri=${redirectUri}&scope=${scope}&response_type=code&state=${state}#wechat_redirect`;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user