Пример #1
0
        Core.ServiceResponse ISecurityService.ChangeAdministratorPassword(SecurityServiceRequest securityServiceRequest)
        {
            if (string.IsNullOrEmpty(securityServiceRequest.Id) ||
                string.IsNullOrEmpty(securityServiceRequest.Token) ||
                string.IsNullOrEmpty(securityServiceRequest.Type))
            {
                return(new Core.ServiceResponse()
                {
                    Code = 400, Message = "Id Type and Token should not null"
                });
            }

            if (!securityServiceRequest.Type.Equals("Administrator") && !securityServiceRequest.Type.Equals("ProjectUser"))
            {
                return(new Core.ServiceResponse()
                {
                    Code = 400, Message = "Type should be Administrator or ProjectUser"
                });
            }

            if (string.IsNullOrEmpty(securityServiceRequest.UserName) ||
                string.IsNullOrEmpty(securityServiceRequest.CurrentPassword) ||
                string.IsNullOrEmpty(securityServiceRequest.NewPassword))
            {
                return(new Core.ServiceResponse()
                {
                    Code = 400, Message = "UserName CurrentPassword and NewPassword should not null"
                });
            }

            string message = string.Empty;

            if (HP.TS.Devops.Security.SecurityCode.Success != HP.TS.Devops.Security.SecurityAction.CheckAccess(this.ConnectString, securityServiceRequest, out message))
            {
                return(new Core.ServiceResponse()
                {
                    Code = 403, Message = securityServiceRequest.Id + " of type " + securityServiceRequest.Type + " have no access of " + message
                });
            }

            SecurityAction securityAction = new SecurityAction(this.ConnectString);

            if (securityAction.ChangeAdministratorPassword(securityServiceRequest.UserName, securityServiceRequest.CurrentPassword, securityServiceRequest.NewPassword) <= 0)
            {
                return(new Core.ServiceResponse()
                {
                    Code = 500, Message = "Change Administrator Password Fail"
                });
            }
            return(new Core.ServiceResponse()
            {
                Code = 0,
                Message = "Success"
            });
        }
Пример #2
0
        SecurityServiceResponse ISecurityService.RetrieveTokenByPassword(SecurityServiceRequest securityServiceRequest)
        {
            if (string.IsNullOrEmpty(securityServiceRequest.UserName) ||
                string.IsNullOrEmpty(securityServiceRequest.CurrentPassword) ||
                string.IsNullOrEmpty(securityServiceRequest.Type))
            {
                return(new SecurityServiceResponse()
                {
                    Code = 400, Message = "Type UserName and CurrentPassword should not null"
                });
            }

            if (!securityServiceRequest.Type.Equals("Administrator") && !securityServiceRequest.Type.Equals("ProjectUser"))
            {
                return(new SecurityServiceResponse()
                {
                    Code = 400, Message = "Type should be Administrator or ProjectUser"
                });
            }

            SecurityAction securityAction = new SecurityAction(this.ConnectString);
            Guid           token          = securityAction.RetrieveTokenByPassword(securityServiceRequest.UserName, securityServiceRequest.CurrentPassword, securityServiceRequest.Type);

            if (token == Guid.Empty)
            {
                return(new SecurityServiceResponse()
                {
                    Code = 500, Message = "Username or Password not correct"
                });
            }

            return(new SecurityServiceResponse()
            {
                Code = 0,
                Message = "Success",
                SecurityRequest = new SecurityRequest()
                {
                    Id = securityServiceRequest.UserName,
                    Type = securityServiceRequest.Type,
                    Token = token.ToString()
                }
            });
        }
        Core.ServiceResponse ISecurityService.ChangeAdministratorPassword(SecurityServiceRequest securityServiceRequest)
        {
            if (string.IsNullOrEmpty(securityServiceRequest.Id)
                 || string.IsNullOrEmpty(securityServiceRequest.Token)
                 || string.IsNullOrEmpty(securityServiceRequest.Type))
            {
                return new Core.ServiceResponse() { Code = 400, Message = "Id Type and Token should not null" };
            }

            if (!securityServiceRequest.Type.Equals("Administrator") && !securityServiceRequest.Type.Equals("ProjectUser"))
            {
                return new Core.ServiceResponse() { Code = 400, Message = "Type should be Administrator or ProjectUser" };
            }

            if (string.IsNullOrEmpty(securityServiceRequest.UserName)
                || string.IsNullOrEmpty(securityServiceRequest.CurrentPassword)
                || string.IsNullOrEmpty(securityServiceRequest.NewPassword))
            {
                return new Core.ServiceResponse() { Code = 400, Message = "UserName CurrentPassword and NewPassword should not null" };
            }

            string message = string.Empty;
            if (HP.TS.Devops.Security.SecurityCode.Success != HP.TS.Devops.Security.SecurityAction.CheckAccess(this.ConnectString, securityServiceRequest, out message))
            {
                return new Core.ServiceResponse() { Code = 403, Message = securityServiceRequest.Id + " of type " + securityServiceRequest.Type + " have no access of " + message };
            }

            SecurityAction securityAction = new SecurityAction(this.ConnectString);
            if (securityAction.ChangeAdministratorPassword(securityServiceRequest.UserName, securityServiceRequest.CurrentPassword, securityServiceRequest.NewPassword) <= 0)
            {
                return new Core.ServiceResponse() { Code = 500, Message = "Change Administrator Password Fail" };
            }
            return new Core.ServiceResponse()
            {
                Code = 0,
                Message = "Success"
            };
        }
        SecurityServiceResponse ISecurityService.RetrieveTokenByPassword(SecurityServiceRequest securityServiceRequest)
        {
            if (string.IsNullOrEmpty(securityServiceRequest.UserName)
                || string.IsNullOrEmpty(securityServiceRequest.CurrentPassword)
                || string.IsNullOrEmpty(securityServiceRequest.Type))
            {
                return new SecurityServiceResponse() { Code = 400, Message = "Type UserName and CurrentPassword should not null" };
            }

            if(!securityServiceRequest.Type.Equals("Administrator")&&!securityServiceRequest.Type.Equals("ProjectUser"))
            {
                return new SecurityServiceResponse() { Code = 400, Message = "Type should be Administrator or ProjectUser" };
            }

            SecurityAction securityAction = new SecurityAction(this.ConnectString);
            Guid token = securityAction.RetrieveTokenByPassword(securityServiceRequest.UserName,securityServiceRequest.CurrentPassword,securityServiceRequest.Type);
            if(token == Guid.Empty)
            {
                return new SecurityServiceResponse() { Code = 500, Message = "Username or Password not correct" };
            }

            return new SecurityServiceResponse() {
                Code = 0,
                Message = "Success",
                SecurityRequest = new SecurityRequest() {
                    Id = securityServiceRequest.UserName,
                    Type = securityServiceRequest.Type,
                    Token = token.ToString()
                }
            };
        }