Documentation
¶
Index ¶
- Constants
- func CreateSelectOptionsQuestion(options []string) string
- func GetUsernameFromSSHCtx(ctx ssh.Context) string
- func HTTPMiddleDebugAuth() gin.HandlerFunc
- func HTTPMiddleSessionAuth(jmsService *service.JMService) gin.HandlerFunc
- func SSHKeyboardInteractiveAuth(ctx ssh.Context, challenger gossh.KeyboardInteractiveChallenge) (res sshd.AuthStatus)
- type ConfirmOption
- type DirectLoginAssetReq
- type LoginConfirmService
- func (c *LoginConfirmService) CheckIsNeedLoginConfirm() (bool, error)
- func (c *LoginConfirmService) GetProcessor() string
- func (c *LoginConfirmService) GetReviewers() []string
- func (c *LoginConfirmService) GetTicketId() string
- func (c *LoginConfirmService) GetTicketUrl() string
- func (c *LoginConfirmService) WaitLoginConfirm(ctx context.Context) Status
- type SSHAuthFunc
- type Status
- type StatusAuth
- type UserAuthClient
- func (u *UserAuthClient) Authenticate(ctx context.Context) (user model.User, authStatus StatusAuth)
- func (u *UserAuthClient) CancelConfirm()
- func (u *UserAuthClient) CheckConfirm(ctx context.Context) (user model.User, authStatus StatusAuth)
- func (u *UserAuthClient) CheckConfirmAuth(ctx ssh.Context, challenger gossh.KeyboardInteractiveChallenge) (ok bool)
- func (u *UserAuthClient) CheckMFAAuth(ctx ssh.Context, challenger gossh.KeyboardInteractiveChallenge) (ok bool)
- func (u *UserAuthClient) CheckUserOTP(ctx context.Context, MFAType string, code string) (user model.User, authStatus StatusAuth)
- func (u *UserAuthClient) GetMFAOptions() []string
- func (u *UserAuthClient) SetOption(setters ...service.UserClientOption)
Constants ¶
View Source
const ( ContextKeyUser = "CONTEXT_USER" ContextKeyClient = "CONTEXT_CLIENT" ContextKeyAuthStatus = "CONTEXT_AUTH_STATUS" ContextKeyAuthFailed = "CONTEXT_AUTH_FAILED" ContextKeyDirectLoginFormat = "CONTEXT_DIRECT_LOGIN_FORMAT" )
View Source
const ( SeparatorATSign = "@" SeparatorHashMark = "#" )
View Source
const ( ErrLoginConfirmWait = "login_confirm_wait" ErrLoginConfirmRejected = "login_confirm_rejected" ErrLoginConfirmRequired = "login_confirm_required" ErrMFARequired = "mfa_required" ErrPasswordFailed = "password_failed" )
Variables ¶
This section is empty.
Functions ¶
func GetUsernameFromSSHCtx ¶
func HTTPMiddleDebugAuth ¶
func HTTPMiddleDebugAuth() gin.HandlerFunc
func HTTPMiddleSessionAuth ¶
func HTTPMiddleSessionAuth(jmsService *service.JMService) gin.HandlerFunc
func SSHKeyboardInteractiveAuth ¶
func SSHKeyboardInteractiveAuth(ctx ssh.Context, challenger gossh.KeyboardInteractiveChallenge) (res sshd.AuthStatus)
Types ¶
type ConfirmOption ¶
type ConfirmOption func(*connectionConfirmOption)
func ConfirmWithSystemUser ¶
func ConfirmWithSystemUser(sysUser *model.SystemUserAuthInfo) ConfirmOption
func ConfirmWithTargetID ¶
func ConfirmWithTargetID(targetID string) ConfirmOption
func ConfirmWithTargetType ¶
func ConfirmWithTargetType(targetType string) ConfirmOption
func ConfirmWithUser ¶
func ConfirmWithUser(user *model.User) ConfirmOption
type DirectLoginAssetReq ¶
type DirectLoginAssetReq struct { Username string SysUserInfo string AssetInfo string Info *model.ConnectTokenInfo }
func ParseDirectUserFormat ¶
func ParseDirectUserFormat(s string) (DirectLoginAssetReq, bool)
func (*DirectLoginAssetReq) Authenticate ¶
func (d *DirectLoginAssetReq) Authenticate(password string) bool
func (*DirectLoginAssetReq) IsToken ¶
func (d *DirectLoginAssetReq) IsToken() bool
func (*DirectLoginAssetReq) IsUUIDString ¶
func (d *DirectLoginAssetReq) IsUUIDString() bool
func (*DirectLoginAssetReq) User ¶
func (d *DirectLoginAssetReq) User() string
type LoginConfirmService ¶
type LoginConfirmService struct {
// contains filtered or unexported fields
}
func NewLoginConfirm ¶
func NewLoginConfirm(jmsService *service.JMService, opts ...ConfirmOption) LoginConfirmService
func (*LoginConfirmService) CheckIsNeedLoginConfirm ¶
func (c *LoginConfirmService) CheckIsNeedLoginConfirm() (bool, error)
func (*LoginConfirmService) GetProcessor ¶
func (c *LoginConfirmService) GetProcessor() string
func (*LoginConfirmService) GetReviewers ¶
func (c *LoginConfirmService) GetReviewers() []string
func (*LoginConfirmService) GetTicketId ¶
func (c *LoginConfirmService) GetTicketId() string
func (*LoginConfirmService) GetTicketUrl ¶
func (c *LoginConfirmService) GetTicketUrl() string
func (*LoginConfirmService) WaitLoginConfirm ¶
func (c *LoginConfirmService) WaitLoginConfirm(ctx context.Context) Status
type SSHAuthFunc ¶
type SSHAuthFunc func(ctx ssh.Context, password, publicKey string) (res sshd.AuthStatus)
func SSHPasswordAndPublicKeyAuth ¶
func SSHPasswordAndPublicKeyAuth(jmsService *service.JMService) SSHAuthFunc
type StatusAuth ¶
type StatusAuth int64
type UserAuthClient ¶
type UserAuthClient struct { *service.UserClient // contains filtered or unexported fields }
func (*UserAuthClient) Authenticate ¶
func (u *UserAuthClient) Authenticate(ctx context.Context) (user model.User, authStatus StatusAuth)
func (*UserAuthClient) CancelConfirm ¶
func (u *UserAuthClient) CancelConfirm()
func (*UserAuthClient) CheckConfirm ¶
func (u *UserAuthClient) CheckConfirm(ctx context.Context) (user model.User, authStatus StatusAuth)
func (*UserAuthClient) CheckConfirmAuth ¶
func (u *UserAuthClient) CheckConfirmAuth(ctx ssh.Context, challenger gossh.KeyboardInteractiveChallenge) (ok bool)
func (*UserAuthClient) CheckMFAAuth ¶
func (u *UserAuthClient) CheckMFAAuth(ctx ssh.Context, challenger gossh.KeyboardInteractiveChallenge) (ok bool)
func (*UserAuthClient) CheckUserOTP ¶
func (u *UserAuthClient) CheckUserOTP(ctx context.Context, MFAType string, code string) (user model.User, authStatus StatusAuth)
func (*UserAuthClient) GetMFAOptions ¶
func (u *UserAuthClient) GetMFAOptions() []string
func (*UserAuthClient) SetOption ¶
func (u *UserAuthClient) SetOption(setters ...service.UserClientOption)
Click to show internal directories.
Click to hide internal directories.