protected override CredentialsRefreshState GenerateNewCredentials() { SecurityCredentials securityCredentials = null; Uri uri = new Uri(Server + Uri); JitteredDelay jitteredDelay = new JitteredDelay(new TimeSpan(0, 0, 0, 0, 200), new TimeSpan(0, 0, 0, 0, 50)); int num = 1; while (true) { try { securityCredentials = URIBasedRefreshingCredentialHelper.GetObjectFromResponse <SecurityCredentials>(uri); if (securityCredentials != null) { break; } } catch (Exception ex) { if (num == MaxRetries) { throw new AmazonServiceException(string.Format(CultureInfo.InvariantCulture, "Unable to retrieve credentials. Message = \"{0}\".", ex.Message)); } } AWSSDKUtils.Sleep(jitteredDelay.Next()); num++; } return(new CredentialsRefreshState { Credentials = new ImmutableCredentials(securityCredentials.AccessKeyId, securityCredentials.SecretAccessKey, securityCredentials.Token), Expiration = securityCredentials.Expiration }); }
private SecurityCredentials GetRoleCredentials() { return(URIBasedRefreshingCredentialHelper.GetObjectFromResponse <SecurityCredentials>(CurrentRoleUri)); }
private static SecurityInfo GetServiceInfo() { return(URIBasedRefreshingCredentialHelper.GetObjectFromResponse <SecurityInfo>(InfoUri)); }