/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the quicksight-2018-04-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.QuickSight.Model { /// /// Container for the parameters to the GenerateEmbedUrlForAnonymousUser operation. /// Generates an embed URL that you can use to embed an Amazon QuickSight dashboard or /// visual in your website, without having to register any reader users. Before you use /// this action, make sure that you have configured the dashboards and permissions. /// /// /// /// The following rules apply to the generated URL: /// /// /// /// For more information, see Embedded /// Analytics in the Amazon QuickSight User Guide. /// /// /// /// For more information about the high-level steps for embedding and for an interactive /// demo of the ways you can customize embedding, visit the Amazon /// QuickSight Developer Portal. /// /// public partial class GenerateEmbedUrlForAnonymousUserRequest : AmazonQuickSightRequest { private List _allowedDomains = new List(); private List _authorizedResourceArns = new List(); private string _awsAccountId; private AnonymousUserEmbeddingExperienceConfiguration _experienceConfiguration; private string _awsNamespace; private long? _sessionLifetimeInMinutes; private List _sessionTags = new List(); /// /// Gets and sets the property AllowedDomains. /// /// The domains that you want to add to the allow list for access to the generated URL /// that is then embedded. This optional parameter overrides the static domains that are /// configured in the Manage QuickSight menu in the Amazon QuickSight console. Instead, /// it allows only the domains that you include in this parameter. You can list up to /// three domains or subdomains in each API call. /// /// /// /// To include all subdomains under a specific domain to the allow list, use *. /// For example, https://*.sapp.amazon.com includes all subdomains under /// https://sapp.amazon.com. /// /// public List AllowedDomains { get { return this._allowedDomains; } set { this._allowedDomains = value; } } // Check to see if AllowedDomains property is set internal bool IsSetAllowedDomains() { return this._allowedDomains != null && this._allowedDomains.Count > 0; } /// /// Gets and sets the property AuthorizedResourceArns. /// /// The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user /// is authorized to access during the lifetime of the session. If you choose Dashboard /// embedding experience, pass the list of dashboard ARNs in the account that you want /// the user to be able to view. Currently, you can pass up to 25 dashboard ARNs in each /// API call. /// /// [AWSProperty(Required=true)] public List AuthorizedResourceArns { get { return this._authorizedResourceArns; } set { this._authorizedResourceArns = value; } } // Check to see if AuthorizedResourceArns property is set internal bool IsSetAuthorizedResourceArns() { return this._authorizedResourceArns != null && this._authorizedResourceArns.Count > 0; } /// /// Gets and sets the property AwsAccountId. /// /// The ID for the Amazon Web Services account that contains the dashboard that you're /// embedding. /// /// [AWSProperty(Required=true, Min=12, Max=12)] public string AwsAccountId { get { return this._awsAccountId; } set { this._awsAccountId = value; } } // Check to see if AwsAccountId property is set internal bool IsSetAwsAccountId() { return this._awsAccountId != null; } /// /// Gets and sets the property ExperienceConfiguration. /// /// The configuration of the experience that you are embedding. /// /// [AWSProperty(Required=true)] public AnonymousUserEmbeddingExperienceConfiguration ExperienceConfiguration { get { return this._experienceConfiguration; } set { this._experienceConfiguration = value; } } // Check to see if ExperienceConfiguration property is set internal bool IsSetExperienceConfiguration() { return this._experienceConfiguration != null; } /// /// Gets and sets the property Namespace. /// /// The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you /// are not using an Amazon QuickSight custom namespace, set this to default. /// /// [AWSProperty(Required=true, Max=64)] public string Namespace { get { return this._awsNamespace; } set { this._awsNamespace = value; } } // Check to see if Namespace property is set internal bool IsSetNamespace() { return this._awsNamespace != null; } /// /// Gets and sets the property SessionLifetimeInMinutes. /// /// How many minutes the session is valid. The session lifetime must be in [15-600] minutes /// range. /// /// [AWSProperty(Min=15, Max=600)] public long SessionLifetimeInMinutes { get { return this._sessionLifetimeInMinutes.GetValueOrDefault(); } set { this._sessionLifetimeInMinutes = value; } } // Check to see if SessionLifetimeInMinutes property is set internal bool IsSetSessionLifetimeInMinutes() { return this._sessionLifetimeInMinutes.HasValue; } /// /// Gets and sets the property SessionTags. /// /// The session tags used for row-level security. Before you use this parameter, make /// sure that you have configured the relevant datasets using the DataSet$RowLevelPermissionTagConfiguration /// parameter so that session tags can be used to provide row-level security. /// /// /// /// These are not the tags used for the Amazon Web Services resource tagging feature. /// For more information, see Using /// Row-Level Security (RLS) with Tagsin the Amazon QuickSight User Guide. /// /// [AWSProperty(Min=1, Max=50)] public List SessionTags { get { return this._sessionTags; } set { this._sessionTags = value; } } // Check to see if SessionTags property is set internal bool IsSetSessionTags() { return this._sessionTags != null && this._sessionTags.Count > 0; } } }