2021-05-03 01:23:45 +08:00
|
|
|
// 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.
|
|
|
|
|
2021-11-04 21:08:43 +08:00
|
|
|
package cred
|
2021-05-03 01:23:45 +08:00
|
|
|
|
2021-11-04 21:08:43 +08:00
|
|
|
type CredManager interface {
|
|
|
|
GetSealedPassword(password string, userSalt string, organizationSalt string) string
|
2021-05-03 01:23:45 +08:00
|
|
|
}
|
|
|
|
|
2021-11-04 21:08:43 +08:00
|
|
|
func GetCredManager(passwordType string) CredManager {
|
|
|
|
if passwordType == "plain" {
|
|
|
|
return NewPlainCredManager()
|
|
|
|
} else if passwordType == "salt" {
|
|
|
|
return NewSha256SaltCredManager()
|
|
|
|
}
|
2021-05-03 01:23:45 +08:00
|
|
|
|
2021-11-04 21:08:43 +08:00
|
|
|
return nil
|
2021-05-03 01:23:45 +08:00
|
|
|
}
|