private OIDCRoleArnCredentialProvider()

in aliyun-net-credentials/Provider/OIDCRoleArnCredentialProvider.cs [91:118]


        private OIDCRoleArnCredentialProvider(Builder builder): base(builder)
        {
            this.durationSeconds = (builder.durationSeconds == null || builder.durationSeconds == 0) ? 3600 : builder.durationSeconds.Value;
            if (this.durationSeconds < 900)
            {
                throw new CredentialException("Session duration should be in the range of 900s - max session duration");
            }
            this.roleSessionName = string.IsNullOrEmpty(builder.roleSessionName)
                ? Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ROLE_SESSION_NAME")
                    ?? "credentials-csharp-" + (DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds
                : builder.roleSessionName;
            this.regionId = string.IsNullOrEmpty(builder.regionId) ? "cn-hangzhou" : builder.regionId;
            this.roleArn = string.IsNullOrEmpty(builder.roleArn) ? Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ROLE_ARN") : builder.roleArn;
            this.connectTimeout = (builder.connectTimeout == null || builder.connectTimeout <= 0) ? 5000 : builder.connectTimeout.Value;
            this.readTimeout = (builder.readTimeout == null || builder.readTimeout <= 0) ? 10000 : builder.readTimeout.Value;
            this.oidcProviderArn = string.IsNullOrEmpty(builder.oidcProviderArn)
                ? Environment.GetEnvironmentVariable("ALIBABA_CLOUD_OIDC_PROVIDER_ARN")
                : builder.oidcProviderArn;
            this.oidcTokenFilePath = string.IsNullOrEmpty(builder.oidcTokenFilePath)
                ? Environment.GetEnvironmentVariable("ALIBABA_CLOUD_OIDC_TOKEN_FILE")
                : builder.oidcTokenFilePath;
            this.policy = builder.policy;
            this.STSEndpoint = builder.stsEndpoint;
            if (string.IsNullOrEmpty(builder.stsEndpoint))
            {
                this.STSEndpoint = string.Format("sts{0}.aliyuncs.com", AuthUtils.GetStsRegionWithVpc(builder.stsRegionId, builder.enableVpc));
            }
        }