mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-23 02:35:49 +08:00
118 lines
3.0 KiB
Go
118 lines
3.0 KiB
Go
// Copyright 2021 The casbin Authors. All Rights Reserved.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
package object
|
|
|
|
import "github.com/casbin/casdoor/util"
|
|
|
|
func InitDb() {
|
|
initBuiltInOrganization()
|
|
initBuiltInUser()
|
|
initBuiltInApplication()
|
|
initBuiltInLdap()
|
|
}
|
|
|
|
func initBuiltInOrganization() {
|
|
organization := getOrganization("admin", "built-in")
|
|
if organization != nil {
|
|
return
|
|
}
|
|
|
|
organization = &Organization{
|
|
Owner: "admin",
|
|
Name: "built-in",
|
|
CreatedTime: util.GetCurrentTime(),
|
|
DisplayName: "Built-in Organization",
|
|
WebsiteUrl: "https://example.com",
|
|
Favicon: "https://cdn.casbin.com/static/favicon.ico",
|
|
PhonePrefix: "86",
|
|
DefaultAvatar: "https://casbin.org/img/casbin.svg",
|
|
PasswordType: "plain",
|
|
}
|
|
AddOrganization(organization)
|
|
}
|
|
|
|
func initBuiltInUser() {
|
|
user := getUser("built-in", "admin")
|
|
if user != nil {
|
|
return
|
|
}
|
|
|
|
user = &User{
|
|
Owner: "built-in",
|
|
Name: "admin",
|
|
CreatedTime: util.GetCurrentTime(),
|
|
Id: util.GenerateId(),
|
|
Type: "normal-user",
|
|
Password: "123",
|
|
DisplayName: "Admin",
|
|
Avatar: "https://casbin.org/img/casbin.svg",
|
|
Email: "admin@example.com",
|
|
Phone: "12345678910",
|
|
Address: []string{},
|
|
Affiliation: "Example Inc.",
|
|
Tag: "staff",
|
|
IsAdmin: true,
|
|
IsGlobalAdmin: true,
|
|
IsForbidden: false,
|
|
Properties: make(map[string]string),
|
|
}
|
|
AddUser(user)
|
|
}
|
|
|
|
func initBuiltInApplication() {
|
|
application := getApplication("admin", "app-built-in")
|
|
if application != nil {
|
|
return
|
|
}
|
|
|
|
application = &Application{
|
|
Owner: "admin",
|
|
Name: "app-built-in",
|
|
CreatedTime: util.GetCurrentTime(),
|
|
DisplayName: "Casdoor",
|
|
Logo: "https://cdn.casbin.com/logo/logo_1024x256.png",
|
|
HomepageUrl: "https://casdoor.org",
|
|
Organization: "built-in",
|
|
EnablePassword: true,
|
|
EnableSignUp: true,
|
|
Providers: []*ProviderItem{},
|
|
SignupItems: []*SignupItem{},
|
|
RedirectUris: []string{},
|
|
ExpireInHours: 168,
|
|
}
|
|
AddApplication(application)
|
|
}
|
|
|
|
func initBuiltInLdap() {
|
|
ldap := GetLdap("ldap-built-in")
|
|
if ldap != nil {
|
|
return
|
|
}
|
|
|
|
ldap = &Ldap{
|
|
Id: "ldap-built-in",
|
|
Owner: "built-in",
|
|
ServerName: "BuildIn LDAP Server",
|
|
Host: "example.com",
|
|
Port: 389,
|
|
Admin: "cn=buildin,dc=example,dc=com",
|
|
Passwd: "123",
|
|
BaseDn: "ou=BuildIn,dc=example,dc=com",
|
|
AutoSync: 0,
|
|
LastSync: "",
|
|
}
|
|
AddLdap(ldap)
|
|
}
|