本文整理匯總了Golang中github.com/xtraclabs/roll/roll.Core.Secure方法的典型用法代碼示例。如果您正苦於以下問題:Golang Core.Secure方法的具體用法?Golang Core.Secure怎麽用?Golang Core.Secure使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/xtraclabs/roll/roll.Core
的用法示例。
在下文中一共展示了Core.Secure方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: Handler
//Handler creates a much with handlers for all routes in the roll application
func Handler(core *roll.Core) http.Handler {
mux := http.NewServeMux()
//Wrap roll services with the auth checker if booted in secure mode
if core.Secure() {
rollClientID := os.Getenv("ROLL_CLIENTID")
if rollClientID == "" {
panic(errors.New("Cannot run in secure mode without a client ID to white list (from ROLL_CLIENTID env variable)"))
}
whitelist := []string{rollClientID}
mux.Handle(DevelopersBaseURI, authzwrapper.Wrap(core.SecretsRepo, core.AdminRepo, whitelist, handleDevelopersBase(core)))
mux.Handle(DevelopersURI, authzwrapper.Wrap(core.SecretsRepo, core.AdminRepo, whitelist, handleDevelopers(core)))
mux.Handle(ApplicationsURI, authzwrapper.Wrap(core.SecretsRepo, core.AdminRepo, whitelist, handleApplications(core)))
mux.Handle(ApplicationsBaseURI, authzwrapper.Wrap(core.SecretsRepo, core.AdminRepo, whitelist, handleApplicationsBase(core)))
mux.Handle(JWTFlowCertsURI, authzwrapper.Wrap(core.SecretsRepo, core.AdminRepo, whitelist, handleJWTFlowCerts(core)))
} else {
mux.Handle(DevelopersBaseURI, authzwrapper.WrapUnsecure(handleDevelopersBase(core)))
mux.Handle(DevelopersURI, authzwrapper.WrapUnsecure(handleDevelopers(core)))
mux.Handle(ApplicationsURI, authzwrapper.WrapUnsecure(handleApplications(core)))
mux.Handle(ApplicationsBaseURI, authzwrapper.WrapUnsecure(handleApplicationsBase(core)))
mux.Handle(JWTFlowCertsURI, authzwrapper.WrapUnsecure(handleJWTFlowCerts(core)))
}
mux.Handle(AuthorizeBaseURI, handleAuthorize(core))
mux.Handle(ValidateBaseURI, handleValidate(core))
mux.Handle(OAuth2TokenBaseURI, handleToken(core))
mux.Handle(TokenInfoURI, handleTokenInfo(core))
return mux
}