Exemple #1
0
        /// <summary>
        /// 修改登录口令
        /// </summary>
        /// <param name="password">登录口令</param>
        /// <param name="newPassword">新登录口令</param>
        public async Task ChangePasswordAsync(string password, string newPassword)
        {
            await _httpClient.CallAsync(HttpMethod.Put, ApiConfig.ApiSecurityMyselfPasswordPath,
                                        String.Format("{0}{1}{2}", password, Standards.RowSeparator, newPassword), true);

            _password = MD5CryptoTextProvider.ComputeHash(newPassword);
        }
Exemple #2
0
 internal User(HttpClient httpClient, string name, string password)
 {
     _httpClient = httpClient;
     _name       = name;
     _password   = MD5CryptoTextProvider.ComputeHash(password);
 }
        /// <summary>
        /// 登记/注册(获取动态口令)
        /// </summary>
        /// <param name="name">登录名</param>
        /// <param name="hashName">登录名需Hash</param>
        /// <param name="phone">手机</param>
        /// <param name="eMail">邮箱</param>
        /// <param name="regAlias">注册昵称</param>
        /// <returns>提示信息</returns>
        public async Task <string> CheckInAsync(string name, bool hashName = false, string phone = null, string eMail = null, string regAlias = null)
        {
            using (HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Get,
                                                                       String.Format("{0}?name={1}&phone={2}&eMail={3}&regAlias={4}", ApiConfig.ApiSecurityGatePath,
                                                                                     hashName && !Phenix.Core.Security.User.IsReservedUserName(name) ? MD5CryptoTextProvider.ComputeHash(name) : name,
                                                                                     phone, eMail, regAlias)))
            {
                using (HttpResponseMessage response = await SendAsync(request))
                {
                    await response.ThrowIfFailedAsync();

                    return(await response.Content.ReadAsStringAsync());
                }
            }
        }
        /// <summary>
        /// 登录
        /// </summary>
        /// <param name="name">登录名</param>
        /// <param name="password">登录口令/动态口令(一般通过邮箱发送给到用户)</param>
        /// <param name="hashName">登录名需Hash</param>
        /// <param name="tag">捎带数据(默认是客户端当前时间)</param>
        /// <returns>用户身份</returns>
        public async Task <Identity> LogonAsync(string name, string password, bool hashName = false, string tag = null)
        {
            Identity = new Identity(this, hashName && !Phenix.Core.Security.User.IsReservedUserName(name) ? MD5CryptoTextProvider.ComputeHash(name) : name, password);
            await Identity.LogonAsync(tag);

            return(Identity);
        }
Exemple #5
0
 internal User(Identity owner, string name, string password)
 {
     _owner    = owner;
     _name     = name;
     _password = MD5CryptoTextProvider.ComputeHash(password);
 }
Exemple #6
0
        /// <summary>
        /// 修改登录口令
        /// </summary>
        /// <param name="password">登录口令(一般通过邮箱发送给到用户)</param>
        public async Task ChangePasswordAsync(string password)
        {
            await _owner.HttpClient.CallAsync(HttpMethod.Put, ApiConfig.ApiSecurityMyselfPasswordPath, password, true);

            _password = MD5CryptoTextProvider.ComputeHash(password);
        }