1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package types
import (
smithydocument "github.com/aws/smithy-go/document"
"time"
)
// Describes an interface VPC endpoint (interface endpoint) that lets you create a
// private connection between the virtual private cloud (VPC) that you specify and
// AppStream 2.0. When you specify an interface endpoint for a stack, users of the
// stack can connect to AppStream 2.0 only through that endpoint. When you specify
// an interface endpoint for an image builder, administrators can connect to the
// image builder only through that endpoint.
type AccessEndpoint struct {
// The type of interface endpoint.
//
// This member is required.
EndpointType AccessEndpointType
// The identifier (ID) of the VPC in which the interface endpoint is used.
VpceId *string
noSmithyDocumentSerde
}
// Describes an app block. App blocks are an Amazon AppStream 2.0 resource that
// stores the details about the virtual hard disk in an S3 bucket. It also stores
// the setup script with details about how to mount the virtual hard disk. The
// virtual hard disk includes the application binaries and other files necessary to
// launch your applications. Multiple applications can be assigned to a single app
// block. This is only supported for Elastic fleets.
type AppBlock struct {
// The ARN of the app block.
//
// This member is required.
Arn *string
// The name of the app block.
//
// This member is required.
Name *string
// The errors of the app block.
AppBlockErrors []ErrorDetails
// The created time of the app block.
CreatedTime *time.Time
// The description of the app block.
Description *string
// The display name of the app block.
DisplayName *string
// The packaging type of the app block.
PackagingType PackagingType
// The post setup script details of the app block. This only applies to app blocks
// with PackagingType APPSTREAM2 .
PostSetupScriptDetails *ScriptDetails
// The setup script details of the app block. This only applies to app blocks with
// PackagingType CUSTOM .
SetupScriptDetails *ScriptDetails
// The source S3 location of the app block.
SourceS3Location *S3Location
// The state of the app block. An app block with AppStream 2.0 packaging will be
// in the INACTIVE state if no application package (VHD) is assigned to it. After
// an application package (VHD) is created by an app block builder for an app
// block, it becomes ACTIVE . Custom app blocks are always in the ACTIVE state and
// no action is required to use them.
State AppBlockState
noSmithyDocumentSerde
}
// Describes an app block builder.
type AppBlockBuilder struct {
// The ARN of the app block builder.
//
// This member is required.
Arn *string
// The instance type of the app block builder.
//
// This member is required.
InstanceType *string
// The name of the app block builder.
//
// This member is required.
Name *string
// The platform of the app block builder. WINDOWS_SERVER_2019 is the only valid
// value.
//
// This member is required.
Platform AppBlockBuilderPlatformType
// The state of the app block builder.
//
// This member is required.
State AppBlockBuilderState
// The VPC configuration for the app block builder.
//
// This member is required.
VpcConfig *VpcConfig
// The list of interface VPC endpoint (interface endpoint) objects. Administrators
// can connect to the app block builder only through the specified endpoints.
AccessEndpoints []AccessEndpoint
// The app block builder errors.
AppBlockBuilderErrors []ResourceError
// The creation time of the app block builder.
CreatedTime *time.Time
// The description of the app block builder.
Description *string
// The display name of the app block builder.
DisplayName *string
// Indicates whether default internet access is enabled for the app block builder.
EnableDefaultInternetAccess *bool
// The ARN of the IAM role that is applied to the app block builder.
IamRoleArn *string
// The state change reason.
StateChangeReason *AppBlockBuilderStateChangeReason
noSmithyDocumentSerde
}
// Describes an association between an app block builder and app block.
type AppBlockBuilderAppBlockAssociation struct {
// The ARN of the app block.
//
// This member is required.
AppBlockArn *string
// The name of the app block builder.
//
// This member is required.
AppBlockBuilderName *string
noSmithyDocumentSerde
}
// Describes the reason why the last app block builder state change occurred.
type AppBlockBuilderStateChangeReason struct {
// The state change reason code.
Code AppBlockBuilderStateChangeReasonCode
// The state change reason message.
Message *string
noSmithyDocumentSerde
}
// Describes an application in the application catalog.
type Application struct {
// The app block ARN of the application.
AppBlockArn *string
// The ARN of the application.
Arn *string
// The time at which the application was created within the app block.
CreatedTime *time.Time
// The description of the application.
Description *string
// The application name to display.
DisplayName *string
// If there is a problem, the application can be disabled after image creation.
Enabled *bool
// The S3 location of the application icon.
IconS3Location *S3Location
// The URL for the application icon. This URL might be time-limited.
IconURL *string
// The instance families for the application.
InstanceFamilies []string
// The arguments that are passed to the application at launch.
LaunchParameters *string
// The path to the application executable in the instance.
LaunchPath *string
// Additional attributes that describe the application.
Metadata map[string]string
// The name of the application.
Name *string
// The platforms on which the application can run.
Platforms []PlatformType
// The working directory for the application.
WorkingDirectory *string
noSmithyDocumentSerde
}
// Describes the application fleet association.
type ApplicationFleetAssociation struct {
// The ARN of the application associated with the fleet.
//
// This member is required.
ApplicationArn *string
// The name of the fleet associated with the application.
//
// This member is required.
FleetName *string
noSmithyDocumentSerde
}
// The persistent application settings for users of a stack.
type ApplicationSettings struct {
// Enables or disables persistent application settings for users during their
// streaming sessions.
//
// This member is required.
Enabled *bool
// The path prefix for the S3 bucket where users’ persistent application settings
// are stored. You can allow the same persistent application settings to be used
// across multiple stacks by specifying the same settings group for each stack.
SettingsGroup *string
noSmithyDocumentSerde
}
// Describes the persistent application settings for users of a stack.
type ApplicationSettingsResponse struct {
// Specifies whether persistent application settings are enabled for users during
// their streaming sessions.
Enabled *bool
// The S3 bucket where users’ persistent application settings are stored. When
// persistent application settings are enabled for the first time for an account in
// an AWS Region, an S3 bucket is created. The bucket is unique to the AWS account
// and the Region.
S3BucketName *string
// The path prefix for the S3 bucket where users’ persistent application settings
// are stored.
SettingsGroup *string
noSmithyDocumentSerde
}
// The certificate-based authentication properties used to authenticate SAML 2.0
// Identity Provider (IdP) user identities to Active Directory domain-joined
// streaming instances. Fallback is turned on by default when certificate-based
// authentication is Enabled . Fallback allows users to log in using their AD
// domain password if certificate-based authentication is unsuccessful, or to
// unlock a desktop lock screen. Enabled_no_directory_login_fallback enables
// certificate-based authentication, but does not allow users to log in using their
// AD domain password. Users will be disconnected to re-authenticate using
// certificates.
type CertificateBasedAuthProperties struct {
// The ARN of the AWS Certificate Manager Private CA resource.
CertificateAuthorityArn *string
// The status of the certificate-based authentication properties.
Status CertificateBasedAuthStatus
noSmithyDocumentSerde
}
// Describes the capacity for a fleet.
type ComputeCapacity struct {
// The desired number of streaming instances.
DesiredInstances *int32
// The desired number of user sessions for a multi-session fleet. This is not
// allowed for single-session fleets. When you create a fleet, you must set either
// the DesiredSessions or DesiredInstances attribute, based on the type of fleet
// you create. You can’t define both attributes or leave both attributes blank.
DesiredSessions *int32
noSmithyDocumentSerde
}
// Describes the capacity status for a fleet.
type ComputeCapacityStatus struct {
// The desired number of streaming instances.
//
// This member is required.
Desired *int32
// The number of user sessions currently being used for streaming sessions. This
// only applies to multi-session fleets.
ActiveUserSessions *int32
// The total number of session slots that are available for streaming or are
// currently streaming. ActualUserSessionCapacity = AvailableUserSessionCapacity +
// ActiveUserSessions This only applies to multi-session fleets.
ActualUserSessions *int32
// The number of currently available instances that can be used to stream sessions.
Available *int32
// The number of idle session slots currently available for user sessions.
// AvailableUserSessionCapacity = ActualUserSessionCapacity - ActiveUserSessions
// This only applies to multi-session fleets.
AvailableUserSessions *int32
// The total number of sessions slots that are either running or pending. This
// represents the total number of concurrent streaming sessions your fleet can
// support in a steady state. DesiredUserSessionCapacity =
// ActualUserSessionCapacity + PendingUserSessionCapacity This only applies to
// multi-session fleets.
DesiredUserSessions *int32
// The number of instances in use for streaming.
InUse *int32
// The total number of simultaneous streaming instances that are running.
Running *int32
noSmithyDocumentSerde
}
// Describes the configuration information required to join fleets and image
// builders to Microsoft Active Directory domains.
type DirectoryConfig struct {
// The fully qualified name of the directory (for example, corp.example.com).
//
// This member is required.
DirectoryName *string
// The certificate-based authentication properties used to authenticate SAML 2.0
// Identity Provider (IdP) user identities to Active Directory domain-joined
// streaming instances. Fallback is turned on by default when certificate-based
// authentication is Enabled . Fallback allows users to log in using their AD
// domain password if certificate-based authentication is unsuccessful, or to
// unlock a desktop lock screen. Enabled_no_directory_login_fallback enables
// certificate-based authentication, but does not allow users to log in using their
// AD domain password. Users will be disconnected to re-authenticate using
// certificates.
CertificateBasedAuthProperties *CertificateBasedAuthProperties
// The time the directory configuration was created.
CreatedTime *time.Time
// The distinguished names of the organizational units for computer accounts.
OrganizationalUnitDistinguishedNames []string
// The credentials for the service account used by the fleet or image builder to
// connect to the directory.
ServiceAccountCredentials *ServiceAccountCredentials
noSmithyDocumentSerde
}
// Describes the configuration information required to join fleets and image
// builders to Microsoft Active Directory domains.
type DomainJoinInfo struct {
// The fully qualified name of the directory (for example, corp.example.com).
DirectoryName *string
// The distinguished name of the organizational unit for computer accounts.
OrganizationalUnitDistinguishedName *string
noSmithyDocumentSerde
}
// The application associated to an entitlement. Access is controlled based on
// user attributes.
type EntitledApplication struct {
// The identifier of the application.
//
// This member is required.
ApplicationIdentifier *string
noSmithyDocumentSerde
}
// Specifies an entitlement. Entitlements control access to specific applications
// within a stack, based on user attributes. Entitlements apply to SAML 2.0
// federated user identities. Amazon AppStream 2.0 user pool and streaming URL
// users are entitled to all applications in a stack. Entitlements don't apply to
// the desktop stream view application, or to applications managed by a dynamic app
// provider using the Dynamic Application Framework.
type Entitlement struct {
// Specifies whether all or selected apps are entitled.
//
// This member is required.
AppVisibility AppVisibility
// The attributes of the entitlement.
//
// This member is required.
Attributes []EntitlementAttribute
// The name of the entitlement.
//
// This member is required.
Name *string
// The name of the stack with which the entitlement is associated.
//
// This member is required.
StackName *string
// The time when the entitlement was created.
CreatedTime *time.Time
// The description of the entitlement.
Description *string
// The time when the entitlement was last modified.
LastModifiedTime *time.Time
noSmithyDocumentSerde
}
// An attribute associated with an entitlement. Application entitlements work by
// matching a supported SAML 2.0 attribute name to a value when a user identity
// federates to an Amazon AppStream 2.0 SAML application.
type EntitlementAttribute struct {
// A supported AWS IAM SAML PrincipalTag attribute that is matched to the
// associated value when a user identity federates into an Amazon AppStream 2.0
// SAML application. The following are valid values:
// - roles
// - department
// - organization
// - groups
// - title
// - costCenter
// - userType
//
// This member is required.
Name *string
// A value that is matched to a supported SAML attribute name when a user identity
// federates into an Amazon AppStream 2.0 SAML application.
//
// This member is required.
Value *string
noSmithyDocumentSerde
}
// The error details.
type ErrorDetails struct {
// The error code.
ErrorCode *string
// The error message.
ErrorMessage *string
noSmithyDocumentSerde
}
// Describes a fleet.
type Fleet struct {
// The Amazon Resource Name (ARN) for the fleet.
//
// This member is required.
Arn *string
// The capacity status for the fleet.
//
// This member is required.
ComputeCapacityStatus *ComputeCapacityStatus
// The instance type to use when launching fleet instances. The following instance
// types are available:
// - stream.standard.small
// - stream.standard.medium
// - stream.standard.large
// - stream.compute.large
// - stream.compute.xlarge
// - stream.compute.2xlarge
// - stream.compute.4xlarge
// - stream.compute.8xlarge
// - stream.memory.large
// - stream.memory.xlarge
// - stream.memory.2xlarge
// - stream.memory.4xlarge
// - stream.memory.8xlarge
// - stream.memory.z1d.large
// - stream.memory.z1d.xlarge
// - stream.memory.z1d.2xlarge
// - stream.memory.z1d.3xlarge
// - stream.memory.z1d.6xlarge
// - stream.memory.z1d.12xlarge
// - stream.graphics-design.large
// - stream.graphics-design.xlarge
// - stream.graphics-design.2xlarge
// - stream.graphics-design.4xlarge
// - stream.graphics-desktop.2xlarge
// - stream.graphics.g4dn.xlarge
// - stream.graphics.g4dn.2xlarge
// - stream.graphics.g4dn.4xlarge
// - stream.graphics.g4dn.8xlarge
// - stream.graphics.g4dn.12xlarge
// - stream.graphics.g4dn.16xlarge
// - stream.graphics-pro.4xlarge
// - stream.graphics-pro.8xlarge
// - stream.graphics-pro.16xlarge
//
// This member is required.
InstanceType *string
// The name of the fleet.
//
// This member is required.
Name *string
// The current state for the fleet.
//
// This member is required.
State FleetState
// The time the fleet was created.
CreatedTime *time.Time
// The description to display.
Description *string
// The amount of time that a streaming session remains active after users
// disconnect. If they try to reconnect to the streaming session after a
// disconnection or network interruption within this time interval, they are
// connected to their previous session. Otherwise, they are connected to a new
// session with a new streaming instance. Specify a value between 60 and 360000.
DisconnectTimeoutInSeconds *int32
// The fleet name to display.
DisplayName *string
// The name of the directory and organizational unit (OU) to use to join the fleet
// to a Microsoft Active Directory domain.
DomainJoinInfo *DomainJoinInfo
// Indicates whether default internet access is enabled for the fleet.
EnableDefaultInternetAccess *bool
// The fleet errors.
FleetErrors []FleetError
// The fleet type. ALWAYS_ON Provides users with instant-on access to their apps.
// You are charged for all running instances in your fleet, even if no users are
// streaming apps. ON_DEMAND Provide users with access to applications after they
// connect, which takes one to two minutes. You are charged for instance streaming
// when users are connected and a small hourly fee for instances that are not
// streaming apps.
FleetType FleetType
// The ARN of the IAM role that is applied to the fleet. To assume a role, the
// fleet instance calls the AWS Security Token Service (STS) AssumeRole API
// operation and passes the ARN of the role to use. The operation creates a new
// session with temporary credentials. AppStream 2.0 retrieves the temporary
// credentials and creates the appstream_machine_role credential profile on the
// instance. For more information, see Using an IAM Role to Grant Permissions to
// Applications and Scripts Running on AppStream 2.0 Streaming Instances (https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html)
// in the Amazon AppStream 2.0 Administration Guide.
IamRoleArn *string
// The amount of time that users can be idle (inactive) before they are
// disconnected from their streaming session and the DisconnectTimeoutInSeconds
// time interval begins. Users are notified before they are disconnected due to
// inactivity. If users try to reconnect to the streaming session before the time
// interval specified in DisconnectTimeoutInSeconds elapses, they are connected to
// their previous session. Users are considered idle when they stop providing
// keyboard or mouse input during their streaming session. File uploads and
// downloads, audio in, audio out, and pixels changing do not qualify as user
// activity. If users continue to be idle after the time interval in
// IdleDisconnectTimeoutInSeconds elapses, they are disconnected. To prevent users
// from being disconnected due to inactivity, specify a value of 0. Otherwise,
// specify a value between 60 and 3600. The default value is 0. If you enable this
// feature, we recommend that you specify a value that corresponds exactly to a
// whole number of minutes (for example, 60, 120, and 180). If you don't do this,
// the value is rounded to the nearest minute. For example, if you specify a value
// of 70, users are disconnected after 1 minute of inactivity. If you specify a
// value that is at the midpoint between two different minutes, the value is
// rounded up. For example, if you specify a value of 90, users are disconnected
// after 2 minutes of inactivity.
IdleDisconnectTimeoutInSeconds *int32
// The ARN for the public, private, or shared image.
ImageArn *string
// The name of the image used to create the fleet.
ImageName *string
// The maximum number of concurrent sessions for the fleet.
MaxConcurrentSessions *int32
// The maximum number of user sessions on an instance. This only applies to
// multi-session fleets.
MaxSessionsPerInstance *int32
// The maximum amount of time that a streaming session can remain active, in
// seconds. If users are still connected to a streaming instance five minutes
// before this limit is reached, they are prompted to save any open documents
// before being disconnected. After this time elapses, the instance is terminated
// and replaced by a new instance. Specify a value between 600 and 360000.
MaxUserDurationInSeconds *int32
// The platform of the fleet.
Platform PlatformType
// The S3 location of the session scripts configuration zip file. This only
// applies to Elastic fleets.
SessionScriptS3Location *S3Location
// The AppStream 2.0 view that is displayed to your users when they stream from
// the fleet. When APP is specified, only the windows of applications opened by
// users display. When DESKTOP is specified, the standard desktop that is provided
// by the operating system displays. The default value is APP .
StreamView StreamView
// The USB device filter strings associated with the fleet.
UsbDeviceFilterStrings []string
// The VPC configuration for the fleet.
VpcConfig *VpcConfig
noSmithyDocumentSerde
}
// Describes a fleet error.
type FleetError struct {
// The error code.
ErrorCode FleetErrorCode
// The error message.
ErrorMessage *string
noSmithyDocumentSerde
}
// Describes an image.
type Image struct {
// The name of the image.
//
// This member is required.
Name *string
// The applications associated with the image.
Applications []Application
// The version of the AppStream 2.0 agent to use for instances that are launched
// from this image.
AppstreamAgentVersion *string
// The ARN of the image.
Arn *string
// The ARN of the image from which this image was created.
BaseImageArn *string
// The time the image was created.
CreatedTime *time.Time
// The description to display.
Description *string
// The image name to display.
DisplayName *string
// The name of the image builder that was used to create the private image. If the
// image is shared, this value is null.
ImageBuilderName *string
// Indicates whether an image builder can be launched from this image.
ImageBuilderSupported *bool
// Describes the errors that are returned when a new image can't be created.
ImageErrors []ResourceError
// The permissions to provide to the destination AWS account for the specified
// image.
ImagePermissions *ImagePermissions
// The operating system platform of the image.
Platform PlatformType
// The release date of the public base image. For private images, this date is the
// release date of the base image from which the image was created.
PublicBaseImageReleasedDate *time.Time
// The image starts in the PENDING state. If image creation succeeds, the state is
// AVAILABLE . If image creation fails, the state is FAILED .
State ImageState
// The reason why the last state change occurred.
StateChangeReason *ImageStateChangeReason
// Indicates whether the image is public or private.
Visibility VisibilityType
noSmithyDocumentSerde
}
// Describes a virtual machine that is used to create an image.
type ImageBuilder struct {
// The name of the image builder.
//
// This member is required.
Name *string
// The list of virtual private cloud (VPC) interface endpoint objects.
// Administrators can connect to the image builder only through the specified
// endpoints.
AccessEndpoints []AccessEndpoint
// The version of the AppStream 2.0 agent that is currently being used by the
// image builder.
AppstreamAgentVersion *string
// The ARN for the image builder.
Arn *string
// The time stamp when the image builder was created.
CreatedTime *time.Time
// The description to display.
Description *string
// The image builder name to display.
DisplayName *string
// The name of the directory and organizational unit (OU) to use to join the image
// builder to a Microsoft Active Directory domain.
DomainJoinInfo *DomainJoinInfo
// Enables or disables default internet access for the image builder.
EnableDefaultInternetAccess *bool
// The ARN of the IAM role that is applied to the image builder. To assume a role,
// the image builder calls the AWS Security Token Service (STS) AssumeRole API
// operation and passes the ARN of the role to use. The operation creates a new
// session with temporary credentials. AppStream 2.0 retrieves the temporary
// credentials and creates the appstream_machine_role credential profile on the
// instance. For more information, see Using an IAM Role to Grant Permissions to
// Applications and Scripts Running on AppStream 2.0 Streaming Instances (https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html)
// in the Amazon AppStream 2.0 Administration Guide.
IamRoleArn *string
// The ARN of the image from which this builder was created.
ImageArn *string
// The image builder errors.
ImageBuilderErrors []ResourceError
// The instance type for the image builder. The following instance types are
// available:
// - stream.standard.small
// - stream.standard.medium
// - stream.standard.large
// - stream.compute.large
// - stream.compute.xlarge
// - stream.compute.2xlarge
// - stream.compute.4xlarge
// - stream.compute.8xlarge
// - stream.memory.large
// - stream.memory.xlarge
// - stream.memory.2xlarge
// - stream.memory.4xlarge
// - stream.memory.8xlarge
// - stream.memory.z1d.large
// - stream.memory.z1d.xlarge
// - stream.memory.z1d.2xlarge
// - stream.memory.z1d.3xlarge
// - stream.memory.z1d.6xlarge
// - stream.memory.z1d.12xlarge
// - stream.graphics-design.large
// - stream.graphics-design.xlarge
// - stream.graphics-design.2xlarge
// - stream.graphics-design.4xlarge
// - stream.graphics-desktop.2xlarge
// - stream.graphics.g4dn.xlarge
// - stream.graphics.g4dn.2xlarge
// - stream.graphics.g4dn.4xlarge
// - stream.graphics.g4dn.8xlarge
// - stream.graphics.g4dn.12xlarge
// - stream.graphics.g4dn.16xlarge
// - stream.graphics-pro.4xlarge
// - stream.graphics-pro.8xlarge
// - stream.graphics-pro.16xlarge
InstanceType *string
// Describes the network details of the fleet or image builder instance.
NetworkAccessConfiguration *NetworkAccessConfiguration
// The operating system platform of the image builder.
Platform PlatformType
// The state of the image builder.
State ImageBuilderState
// The reason why the last state change occurred.
StateChangeReason *ImageBuilderStateChangeReason
// The VPC configuration of the image builder.
VpcConfig *VpcConfig
noSmithyDocumentSerde
}
// Describes the reason why the last image builder state change occurred.
type ImageBuilderStateChangeReason struct {
// The state change reason code.
Code ImageBuilderStateChangeReasonCode
// The state change reason message.
Message *string
noSmithyDocumentSerde
}
// Describes the permissions for an image.
type ImagePermissions struct {
// Indicates whether the image can be used for a fleet.
AllowFleet *bool
// Indicates whether the image can be used for an image builder.
AllowImageBuilder *bool
noSmithyDocumentSerde
}
// Describes the reason why the last image state change occurred.
type ImageStateChangeReason struct {
// The state change reason code.
Code ImageStateChangeReasonCode
// The state change reason message.
Message *string
noSmithyDocumentSerde
}
// Describes the error that is returned when a usage report can't be generated.
type LastReportGenerationExecutionError struct {
// The error code for the error that is returned when a usage report can't be
// generated.
ErrorCode UsageReportExecutionErrorCode
// The error message for the error that is returned when a usage report can't be
// generated.
ErrorMessage *string
noSmithyDocumentSerde
}
// Describes the network details of the fleet or image builder instance.
type NetworkAccessConfiguration struct {
// The resource identifier of the elastic network interface that is attached to
// instances in your VPC. All network interfaces have the eni-xxxxxxxx resource
// identifier.
EniId *string
// The private IP address of the elastic network interface that is attached to
// instances in your VPC.
EniPrivateIpAddress *string
noSmithyDocumentSerde
}
// Describes a resource error.
type ResourceError struct {
// The error code.
ErrorCode FleetErrorCode
// The error message.
ErrorMessage *string
// The time the error occurred.
ErrorTimestamp *time.Time
noSmithyDocumentSerde
}
// Describes the S3 location.
type S3Location struct {
// The S3 bucket of the S3 object.
//
// This member is required.
S3Bucket *string
// The S3 key of the S3 object. This is required when used for the following:
// - IconS3Location (Actions: CreateApplication and UpdateApplication)
// - SessionScriptS3Location (Actions: CreateFleet and UpdateFleet)
// - ScriptDetails (Actions: CreateAppBlock)
// - SourceS3Location when creating an app block with CUSTOM PackagingType
// (Actions: CreateAppBlock)
// - SourceS3Location when creating an app block with APPSTREAM2 PackagingType,
// and using an existing application package (VHD file). In this case, S3Key
// refers to the VHD file. If a new application package is required, then S3Key
// is not required. (Actions: CreateAppBlock)
S3Key *string
noSmithyDocumentSerde
}
// Describes the details of the script.
type ScriptDetails struct {
// The run path for the script.
//
// This member is required.
ExecutablePath *string
// The S3 object location for the script.
//
// This member is required.
ScriptS3Location *S3Location
// The run timeout, in seconds, for the script.
//
// This member is required.
TimeoutInSeconds *int32
// The runtime parameters passed to the run path for the script.
ExecutableParameters *string
noSmithyDocumentSerde
}
// Describes the credentials for the service account used by the fleet or image
// builder to connect to the directory.
type ServiceAccountCredentials struct {
// The user name of the account. This account must have the following privileges:
// create computer objects, join computers to the domain, and change/reset the
// password on descendant computer objects for the organizational units specified.
//
// This member is required.
AccountName *string
// The password for the account.
//
// This member is required.
AccountPassword *string
noSmithyDocumentSerde
}
// Describes a streaming session.
type Session struct {
// The name of the fleet for the streaming session.
//
// This member is required.
FleetName *string
// The identifier of the streaming session.
//
// This member is required.
Id *string
// The name of the stack for the streaming session.
//
// This member is required.
StackName *string
// The current state of the streaming session.
//
// This member is required.
State SessionState
// The identifier of the user for whom the session was created.
//
// This member is required.
UserId *string
// The authentication method. The user is authenticated using a streaming URL ( API
// ) or SAML 2.0 federation ( SAML ).
AuthenticationType AuthenticationType
// Specifies whether a user is connected to the streaming session.
ConnectionState SessionConnectionState
// The identifier for the instance hosting the session.
InstanceId *string
// The time when the streaming session is set to expire. This time is based on the
// MaxUserDurationinSeconds value, which determines the maximum length of time that
// a streaming session can run. A streaming session might end earlier than the time
// specified in SessionMaxExpirationTime , when the DisconnectTimeOutInSeconds
// elapses or the user chooses to end his or her session. If the
// DisconnectTimeOutInSeconds elapses, or the user chooses to end his or her
// session, the streaming instance is terminated and the streaming session ends.
MaxExpirationTime *time.Time
// The network details for the streaming session.
NetworkAccessConfiguration *NetworkAccessConfiguration
// The time when a streaming instance is dedicated for the user.
StartTime *time.Time
noSmithyDocumentSerde
}
// Describes the permissions that are available to the specified AWS account for a
// shared image.
type SharedImagePermissions struct {
// Describes the permissions for a shared image.
//
// This member is required.
ImagePermissions *ImagePermissions
// The 12-digit identifier of the AWS account with which the image is shared.
//
// This member is required.
SharedAccountId *string
noSmithyDocumentSerde
}
// Describes a stack.
type Stack struct {
// The name of the stack.
//
// This member is required.
Name *string
// The list of virtual private cloud (VPC) interface endpoint objects. Users of
// the stack can connect to AppStream 2.0 only through the specified endpoints.
AccessEndpoints []AccessEndpoint
// The persistent application settings for users of the stack.
ApplicationSettings *ApplicationSettingsResponse
// The ARN of the stack.
Arn *string
// The time the stack was created.
CreatedTime *time.Time
// The description to display.
Description *string
// The stack name to display.
DisplayName *string
// The domains where AppStream 2.0 streaming sessions can be embedded in an
// iframe. You must approve the domains that you want to host embedded AppStream
// 2.0 streaming sessions.
EmbedHostDomains []string
// The URL that users are redirected to after they click the Send Feedback link.
// If no URL is specified, no Send Feedback link is displayed.
FeedbackURL *string
// The URL that users are redirected to after their streaming session ends.
RedirectURL *string
// The errors for the stack.
StackErrors []StackError
// The storage connectors to enable.
StorageConnectors []StorageConnector
// The streaming protocol you want your stack to prefer. This can be UDP or TCP.
// Currently, UDP is only supported in the Windows native client.
StreamingExperienceSettings *StreamingExperienceSettings
// The actions that are enabled or disabled for users during their streaming
// sessions. By default these actions are enabled.
UserSettings []UserSetting
noSmithyDocumentSerde
}
// Describes a stack error.
type StackError struct {
// The error code.
ErrorCode StackErrorCode
// The error message.
ErrorMessage *string
noSmithyDocumentSerde
}
// Describes a connector that enables persistent storage for users.
type StorageConnector struct {
// The type of storage connector.
//
// This member is required.
ConnectorType StorageConnectorType
// The names of the domains for the account.
Domains []string
// The ARN of the storage connector.
ResourceIdentifier *string
noSmithyDocumentSerde
}
// The streaming protocol you want your stack to prefer. This can be UDP or TCP.
// Currently, UDP is only supported in the Windows native client.
type StreamingExperienceSettings struct {
// The preferred protocol that you want to use while streaming your application.
PreferredProtocol PreferredProtocol
noSmithyDocumentSerde
}
// Describes information about the usage report subscription.
type UsageReportSubscription struct {
// The time when the last usage report was generated.
LastGeneratedReportDate *time.Time
// The Amazon S3 bucket where generated reports are stored. If you enabled
// on-instance session scripts and Amazon S3 logging for your session script
// configuration, AppStream 2.0 created an S3 bucket to store the script output.
// The bucket is unique to your account and Region. When you enable usage reporting
// in this case, AppStream 2.0 uses the same bucket to store your usage reports. If
// you haven't already enabled on-instance session scripts, when you enable usage
// reports, AppStream 2.0 creates a new S3 bucket.
S3BucketName *string
// The schedule for generating usage reports.
Schedule UsageReportSchedule
// The errors that were returned if usage reports couldn't be generated.
SubscriptionErrors []LastReportGenerationExecutionError
noSmithyDocumentSerde
}
// Describes a user in the user pool.
type User struct {
// The authentication type for the user.
//
// This member is required.
AuthenticationType AuthenticationType
// The ARN of the user.
Arn *string
// The date and time the user was created in the user pool.
CreatedTime *time.Time
// Specifies whether the user in the user pool is enabled.
Enabled *bool
// The first name, or given name, of the user.
FirstName *string
// The last name, or surname, of the user.
LastName *string
// The status of the user in the user pool. The status can be one of the
// following:
// - UNCONFIRMED – The user is created but not confirmed.
// - CONFIRMED – The user is confirmed.
// - ARCHIVED – The user is no longer active.
// - COMPROMISED – The user is disabled because of a potential security threat.
// - UNKNOWN – The user status is not known.
Status *string
// The email address of the user. Users' email addresses are case-sensitive.
UserName *string
noSmithyDocumentSerde
}
// Describes an action and whether the action is enabled or disabled for users
// during their streaming sessions.
type UserSetting struct {
// The action that is enabled or disabled.
//
// This member is required.
Action Action
// Indicates whether the action is enabled or disabled.
//
// This member is required.
Permission Permission
// Specifies the number of characters that can be copied by end users from the
// local device to the remote session, and to the local device from the remote
// session. This can be specified only for the CLIPBOARD_COPY_FROM_LOCAL_DEVICE
// and CLIPBOARD_COPY_TO_LOCAL_DEVICE actions. This defaults to 20,971,520 (20 MB)
// when unspecified and the permission is ENABLED . This can't be specified when
// the permission is DISABLED . This can only be specified for AlwaysOn and
// OnDemand fleets. The attribute is not supported on Elastic fleets. The value can
// be between 1 and 20,971,520 (20 MB).
MaximumLength *int32
noSmithyDocumentSerde
}
// Describes a user in the user pool and the associated stack.
type UserStackAssociation struct {
// The authentication type for the user.
//
// This member is required.
AuthenticationType AuthenticationType
// The name of the stack that is associated with the user.
//
// This member is required.
StackName *string
// The email address of the user who is associated with the stack. Users' email
// addresses are case-sensitive.
//
// This member is required.
UserName *string
// Specifies whether a welcome email is sent to a user after the user is created
// in the user pool.
SendEmailNotification *bool
noSmithyDocumentSerde
}
// Describes the error that is returned when a user can’t be associated with or
// disassociated from a stack.
type UserStackAssociationError struct {
// The error code for the error that is returned when a user can’t be associated
// with or disassociated from a stack.
ErrorCode UserStackAssociationErrorCode
// The error message for the error that is returned when a user can’t be
// associated with or disassociated from a stack.
ErrorMessage *string
// Information about the user and associated stack.
UserStackAssociation *UserStackAssociation
noSmithyDocumentSerde
}
// Describes VPC configuration information for fleets and image builders.
type VpcConfig struct {
// The identifiers of the security groups for the fleet or image builder.
SecurityGroupIds []string
// The identifiers of the subnets to which a network interface is attached from
// the fleet instance or image builder instance. Fleet instances use one or more
// subnets. Image builder instances use one subnet.
SubnetIds []string
noSmithyDocumentSerde
}
type noSmithyDocumentSerde = smithydocument.NoSerde
|