Exemplo n.º 1
0
        public virtual Task <AlibabaCloudCredentials> GetRamRoleArnAlibabaCloudCredentialAsync(CancellationToken cancellationToken)
        {
            if (string.IsNullOrEmpty(accessKeyId) || string.IsNullOrEmpty(accessKeySecret) ||
                string.IsNullOrEmpty(regionId))
            {
                throw new ClientException("Missing required variable option for 'default Client'");
            }

            var credential = new BasicSessionCredentials(accessKeyId, accessKeySecret,
                                                         STSAssumeRoleSessionCredentialsProvider.GetNewRoleSessionName(),
                                                         3600
                                                         );
            var profile = DefaultProfile.GetProfile(regionId, accessKeyId, accessKeySecret);

            STSAssumeRoleSessionCredentialsProvider stsAsssumeRoleSessionCredentialProvider;

            if (null != alibabaCloudCredentialProvider)
            {
                stsAsssumeRoleSessionCredentialProvider =
                    (STSAssumeRoleSessionCredentialsProvider)alibabaCloudCredentialProvider;
            }
            else
            {
                stsAsssumeRoleSessionCredentialProvider =
                    new STSAssumeRoleSessionCredentialsProvider(credential, roleArn, profile);
            }

            return(stsAsssumeRoleSessionCredentialProvider.GetCredentialsAsync(cancellationToken));
        }
Exemplo n.º 2
0
        public virtual AlibabaCloudCredentials GetRamRoleArnAlibabaCloudCredential()
        {
            if (String.IsNullOrEmpty(this.accessKeyId) && String.IsNullOrEmpty(this.accessKeySecret) && String.IsNullOrEmpty(this.regionId))
            {
                throw new ClientException("Missing required variable option for 'default Client'");
            }
            RamRoleArnCredential credential = new RamRoleArnCredential(
                this.accessKeyId,
                this.accessKeySecret,
                this.roleArn,
                this.roleSessionName,
                STSAssumeRoleSessionCredentialsProvider.GetNewRoleSessionName(),
                STSAssumeRoleSessionCredentialsProvider.DEFAULT_DURATION_SECONDS);

            this.defaultProfile = DefaultProfile.GetProfile(this.regionId, this.accessKeyId, this.accessKeySecret);

            var sTSAssumeRoleSessionCredentialsProvider = (STSAssumeRoleSessionCredentialsProvider)alibabaCloudCredentialProvider;
            RamRoleArnCredential ramRoleArnCredential   = (RamRoleArnCredential)sTSAssumeRoleSessionCredentialsProvider.GetCredentials();

            return(ramRoleArnCredential);
        }