/// <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); }
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}®Alias={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); }
internal User(Identity owner, string name, string password) { _owner = owner; _name = name; _password = MD5CryptoTextProvider.ComputeHash(password); }
/// <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); }