コード例 #1
0
        public async Task DefaultProviderAsyncTest()
        {
            DefaultCredentialsProvider provider = new DefaultCredentialsProvider();

            Assert.NotNull(provider);
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });

            RamRoleArnCredentialProvider testProvider = new RamRoleArnCredentialProvider("accessKeyId2", "accessKeySecret", "roleArn");

            provider.AddCredentialsProvider(testProvider);
            provider.RemoveCredentialsProvider(testProvider);
            Assert.False(provider.ContainsCredentialsProvider(testProvider));
            provider.ClearCredentialsProvider();

            Mock <IAlibabaCloudCredentialsProvider> mockProvider = new Mock <IAlibabaCloudCredentialsProvider>();

            mockProvider.Setup(p => p.GetCredentialsAsync()).ReturnsAsync((AccessKeyCredential)null);
            provider.AddCredentialsProvider(mockProvider.Object);
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });

            provider.ClearCredentialsProvider();

            mockProvider = new Mock <IAlibabaCloudCredentialsProvider>();
            mockProvider.Setup(p => p.GetCredentialsAsync()).ReturnsAsync(new AccessKeyCredential("accessKeyId", "accessKeySecret"));
            provider.AddCredentialsProvider(mockProvider.Object);
            Assert.IsType <AccessKeyCredential>(await provider.GetCredentialsAsync());

            provider.ClearCredentialsProvider();
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });
        }
コード例 #2
0
ファイル: Client.cs プロジェクト: aliyun/credentials-csharp
 public Client(Config config)
 {
     if (null == config)
     {
         DefaultCredentialsProvider provider = new DefaultCredentialsProvider();
         this.cloudCredential = provider.GetCredentials();
         return;
     }
     this.cloudCredential = GetCredential(config);
 }