public async Task GetRoleNameAsync(IConnClient client)
        {
            HttpRequest httpRequest = new HttpRequest();

            httpRequest.Method         = MethodType.Get;
            httpRequest.ConnectTimeout = connectionTimeout;
            httpRequest.ReadTimeout    = readTimeout;
            httpRequest.Url            = credentialUrl;
            HttpResponse httpResponse;

            try
            {
                httpResponse = await client.DoActionAsync(httpRequest);
            }
            catch (Exception ex)
            {
                throw new CredentialException("Failed to connect ECS Metadata Service: " + ex.Message);
            }

            if (httpResponse != null && httpResponse.Status != 200)
            {
                throw new CredentialException(EcsMetadatFetchErrorMsg + " HttpCode=" + httpResponse.Status);
            }

            roleName = httpResponse.GetHttpContentString();
        }