aws-sdk-workspacesweb 1.44.0 → 1.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -481,28 +481,28 @@ module Aws::WorkSpacesWeb
481
481
 
482
482
  # Associates a browser settings resource with a web portal.
483
483
  #
484
- # @option params [required, String] :browser_settings_arn
485
- # The ARN of the browser settings.
486
- #
487
484
  # @option params [required, String] :portal_arn
488
485
  # The ARN of the web portal.
489
486
  #
487
+ # @option params [required, String] :browser_settings_arn
488
+ # The ARN of the browser settings.
489
+ #
490
490
  # @return [Types::AssociateBrowserSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
491
491
  #
492
- # * {Types::AssociateBrowserSettingsResponse#browser_settings_arn #browser_settings_arn} => String
493
492
  # * {Types::AssociateBrowserSettingsResponse#portal_arn #portal_arn} => String
493
+ # * {Types::AssociateBrowserSettingsResponse#browser_settings_arn #browser_settings_arn} => String
494
494
  #
495
495
  # @example Request syntax with placeholder values
496
496
  #
497
497
  # resp = client.associate_browser_settings({
498
- # browser_settings_arn: "ARN", # required
499
498
  # portal_arn: "ARN", # required
499
+ # browser_settings_arn: "ARN", # required
500
500
  # })
501
501
  #
502
502
  # @example Response structure
503
503
  #
504
- # resp.browser_settings_arn #=> String
505
504
  # resp.portal_arn #=> String
505
+ # resp.browser_settings_arn #=> String
506
506
  #
507
507
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/AssociateBrowserSettings AWS API Documentation
508
508
  #
@@ -515,28 +515,28 @@ module Aws::WorkSpacesWeb
515
515
 
516
516
  # Associates a data protection settings resource with a web portal.
517
517
  #
518
- # @option params [required, String] :data_protection_settings_arn
519
- # The ARN of the data protection settings.
520
- #
521
518
  # @option params [required, String] :portal_arn
522
519
  # The ARN of the web portal.
523
520
  #
521
+ # @option params [required, String] :data_protection_settings_arn
522
+ # The ARN of the data protection settings.
523
+ #
524
524
  # @return [Types::AssociateDataProtectionSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
525
525
  #
526
- # * {Types::AssociateDataProtectionSettingsResponse#data_protection_settings_arn #data_protection_settings_arn} => String
527
526
  # * {Types::AssociateDataProtectionSettingsResponse#portal_arn #portal_arn} => String
527
+ # * {Types::AssociateDataProtectionSettingsResponse#data_protection_settings_arn #data_protection_settings_arn} => String
528
528
  #
529
529
  # @example Request syntax with placeholder values
530
530
  #
531
531
  # resp = client.associate_data_protection_settings({
532
- # data_protection_settings_arn: "ARN", # required
533
532
  # portal_arn: "ARN", # required
533
+ # data_protection_settings_arn: "ARN", # required
534
534
  # })
535
535
  #
536
536
  # @example Response structure
537
537
  #
538
- # resp.data_protection_settings_arn #=> String
539
538
  # resp.portal_arn #=> String
539
+ # resp.data_protection_settings_arn #=> String
540
540
  #
541
541
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/AssociateDataProtectionSettings AWS API Documentation
542
542
  #
@@ -549,28 +549,28 @@ module Aws::WorkSpacesWeb
549
549
 
550
550
  # Associates an IP access settings resource with a web portal.
551
551
  #
552
- # @option params [required, String] :ip_access_settings_arn
553
- # The ARN of the IP access settings.
554
- #
555
552
  # @option params [required, String] :portal_arn
556
553
  # The ARN of the web portal.
557
554
  #
555
+ # @option params [required, String] :ip_access_settings_arn
556
+ # The ARN of the IP access settings.
557
+ #
558
558
  # @return [Types::AssociateIpAccessSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
559
559
  #
560
- # * {Types::AssociateIpAccessSettingsResponse#ip_access_settings_arn #ip_access_settings_arn} => String
561
560
  # * {Types::AssociateIpAccessSettingsResponse#portal_arn #portal_arn} => String
561
+ # * {Types::AssociateIpAccessSettingsResponse#ip_access_settings_arn #ip_access_settings_arn} => String
562
562
  #
563
563
  # @example Request syntax with placeholder values
564
564
  #
565
565
  # resp = client.associate_ip_access_settings({
566
- # ip_access_settings_arn: "ARN", # required
567
566
  # portal_arn: "ARN", # required
567
+ # ip_access_settings_arn: "ARN", # required
568
568
  # })
569
569
  #
570
570
  # @example Response structure
571
571
  #
572
- # resp.ip_access_settings_arn #=> String
573
572
  # resp.portal_arn #=> String
573
+ # resp.ip_access_settings_arn #=> String
574
574
  #
575
575
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/AssociateIpAccessSettings AWS API Documentation
576
576
  #
@@ -583,28 +583,28 @@ module Aws::WorkSpacesWeb
583
583
 
584
584
  # Associates a network settings resource with a web portal.
585
585
  #
586
- # @option params [required, String] :network_settings_arn
587
- # The ARN of the network settings.
588
- #
589
586
  # @option params [required, String] :portal_arn
590
587
  # The ARN of the web portal.
591
588
  #
589
+ # @option params [required, String] :network_settings_arn
590
+ # The ARN of the network settings.
591
+ #
592
592
  # @return [Types::AssociateNetworkSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
593
593
  #
594
- # * {Types::AssociateNetworkSettingsResponse#network_settings_arn #network_settings_arn} => String
595
594
  # * {Types::AssociateNetworkSettingsResponse#portal_arn #portal_arn} => String
595
+ # * {Types::AssociateNetworkSettingsResponse#network_settings_arn #network_settings_arn} => String
596
596
  #
597
597
  # @example Request syntax with placeholder values
598
598
  #
599
599
  # resp = client.associate_network_settings({
600
- # network_settings_arn: "ARN", # required
601
600
  # portal_arn: "ARN", # required
601
+ # network_settings_arn: "ARN", # required
602
602
  # })
603
603
  #
604
604
  # @example Response structure
605
605
  #
606
- # resp.network_settings_arn #=> String
607
606
  # resp.portal_arn #=> String
607
+ # resp.network_settings_arn #=> String
608
608
  #
609
609
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/AssociateNetworkSettings AWS API Documentation
610
610
  #
@@ -615,6 +615,56 @@ module Aws::WorkSpacesWeb
615
615
  req.send_request(options)
616
616
  end
617
617
 
618
+ # Associates a session logger with a portal.
619
+ #
620
+ # @option params [required, String] :portal_arn
621
+ # The ARN of the portal to associate to the session logger ARN.
622
+ #
623
+ # @option params [required, String] :session_logger_arn
624
+ # The ARN of the session logger to associate to the portal ARN.
625
+ #
626
+ # @return [Types::AssociateSessionLoggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
627
+ #
628
+ # * {Types::AssociateSessionLoggerResponse#portal_arn #portal_arn} => String
629
+ # * {Types::AssociateSessionLoggerResponse#session_logger_arn #session_logger_arn} => String
630
+ #
631
+ #
632
+ # @example Example: Associate Session Logger with Portal
633
+ #
634
+ # # Associates a session logger with a portal
635
+ #
636
+ # resp = client.associate_session_logger({
637
+ # portal_arn: "arn:aws:workspaces-web:us-west-2:123456789012:portal/12345678-1234-1234-1234-123456789012",
638
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/11111111-1111-1111-1111-111111111111",
639
+ # })
640
+ #
641
+ # resp.to_h outputs the following:
642
+ # {
643
+ # portal_arn: "arn:aws:workspaces-web:us-west-2:123456789012:portal/12345678-1234-1234-1234-123456789012",
644
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/11111111-1111-1111-1111-111111111111",
645
+ # }
646
+ #
647
+ # @example Request syntax with placeholder values
648
+ #
649
+ # resp = client.associate_session_logger({
650
+ # portal_arn: "ARN", # required
651
+ # session_logger_arn: "ARN", # required
652
+ # })
653
+ #
654
+ # @example Response structure
655
+ #
656
+ # resp.portal_arn #=> String
657
+ # resp.session_logger_arn #=> String
658
+ #
659
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/AssociateSessionLogger AWS API Documentation
660
+ #
661
+ # @overload associate_session_logger(params = {})
662
+ # @param [Hash] params ({})
663
+ def associate_session_logger(params = {}, options = {})
664
+ req = build_request(:associate_session_logger, params)
665
+ req.send_request(options)
666
+ end
667
+
618
668
  # Associates a trust store with a web portal.
619
669
  #
620
670
  # @option params [required, String] :portal_arn
@@ -722,6 +772,13 @@ module Aws::WorkSpacesWeb
722
772
  # how the browser will behave once a user starts a streaming session for
723
773
  # the web portal.
724
774
  #
775
+ # @option params [Array<Types::Tag>] :tags
776
+ # The tags to add to the browser settings resource. A tag is a key-value
777
+ # pair.
778
+ #
779
+ # @option params [String] :customer_managed_key
780
+ # The custom managed key of the browser settings.
781
+ #
725
782
  # @option params [Hash<String,String>] :additional_encryption_context
726
783
  # Additional encryption context of the browser settings.
727
784
  #
@@ -742,13 +799,6 @@ module Aws::WorkSpacesWeb
742
799
  # **A suitable default value is auto-generated.** You should normally
743
800
  # not need to pass this option.**
744
801
  #
745
- # @option params [String] :customer_managed_key
746
- # The custom managed key of the browser settings.
747
- #
748
- # @option params [Array<Types::Tag>] :tags
749
- # The tags to add to the browser settings resource. A tag is a key-value
750
- # pair.
751
- #
752
802
  # @return [Types::CreateBrowserSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
753
803
  #
754
804
  # * {Types::CreateBrowserSettingsResponse#browser_settings_arn #browser_settings_arn} => String
@@ -756,18 +806,18 @@ module Aws::WorkSpacesWeb
756
806
  # @example Request syntax with placeholder values
757
807
  #
758
808
  # resp = client.create_browser_settings({
759
- # additional_encryption_context: {
760
- # "StringType" => "StringType",
761
- # },
762
- # browser_policy: "BrowserPolicy", # required
763
- # client_token: "ClientToken",
764
- # customer_managed_key: "keyArn",
765
809
  # tags: [
766
810
  # {
767
811
  # key: "TagKey", # required
768
812
  # value: "TagValue", # required
769
813
  # },
770
814
  # ],
815
+ # customer_managed_key: "keyArn",
816
+ # additional_encryption_context: {
817
+ # "StringType" => "StringType",
818
+ # },
819
+ # browser_policy: "BrowserPolicy", # required
820
+ # client_token: "ClientToken",
771
821
  # })
772
822
  #
773
823
  # @example Response structure
@@ -786,9 +836,26 @@ module Aws::WorkSpacesWeb
786
836
  # Creates a data protection settings resource that can be associated
787
837
  # with a web portal.
788
838
  #
839
+ # @option params [String] :display_name
840
+ # The display name of the data protection settings.
841
+ #
842
+ # @option params [String] :description
843
+ # The description of the data protection settings.
844
+ #
845
+ # @option params [Array<Types::Tag>] :tags
846
+ # The tags to add to the data protection settings resource. A tag is a
847
+ # key-value pair.
848
+ #
849
+ # @option params [String] :customer_managed_key
850
+ # The custom managed key of the data protection settings.
851
+ #
789
852
  # @option params [Hash<String,String>] :additional_encryption_context
790
853
  # Additional encryption context of the data protection settings.
791
854
  #
855
+ # @option params [Types::InlineRedactionConfiguration] :inline_redaction_configuration
856
+ # The inline redaction configuration of the data protection settings
857
+ # that will be applied to all sessions.
858
+ #
792
859
  # @option params [String] :client_token
793
860
  # A unique, case-sensitive identifier that you provide to ensure the
794
861
  # idempotency of the request. Idempotency ensures that an API request
@@ -802,23 +869,6 @@ module Aws::WorkSpacesWeb
802
869
  # **A suitable default value is auto-generated.** You should normally
803
870
  # not need to pass this option.**
804
871
  #
805
- # @option params [String] :customer_managed_key
806
- # The custom managed key of the data protection settings.
807
- #
808
- # @option params [String] :description
809
- # The description of the data protection settings.
810
- #
811
- # @option params [String] :display_name
812
- # The display name of the data protection settings.
813
- #
814
- # @option params [Types::InlineRedactionConfiguration] :inline_redaction_configuration
815
- # The inline redaction configuration of the data protection settings
816
- # that will be applied to all sessions.
817
- #
818
- # @option params [Array<Types::Tag>] :tags
819
- # The tags to add to the data protection settings resource. A tag is a
820
- # key-value pair.
821
- #
822
872
  # @return [Types::CreateDataProtectionSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
823
873
  #
824
874
  # * {Types::CreateDataProtectionSettingsResponse#data_protection_settings_arn #data_protection_settings_arn} => String
@@ -826,42 +876,42 @@ module Aws::WorkSpacesWeb
826
876
  # @example Request syntax with placeholder values
827
877
  #
828
878
  # resp = client.create_data_protection_settings({
879
+ # display_name: "DisplayNameSafe",
880
+ # description: "DescriptionSafe",
881
+ # tags: [
882
+ # {
883
+ # key: "TagKey", # required
884
+ # value: "TagValue", # required
885
+ # },
886
+ # ],
887
+ # customer_managed_key: "keyArn",
829
888
  # additional_encryption_context: {
830
889
  # "StringType" => "StringType",
831
890
  # },
832
- # client_token: "ClientToken",
833
- # customer_managed_key: "keyArn",
834
- # description: "DescriptionSafe",
835
- # display_name: "DisplayNameSafe",
836
891
  # inline_redaction_configuration: {
837
- # global_confidence_level: 1,
838
- # global_enforced_urls: ["InlineRedactionUrl"],
839
- # global_exempt_urls: ["InlineRedactionUrl"],
840
892
  # inline_redaction_patterns: [ # required
841
893
  # {
842
894
  # built_in_pattern_id: "BuiltInPatternId",
843
- # confidence_level: 1,
844
895
  # custom_pattern: {
845
- # keyword_regex: "Regex",
846
- # pattern_description: "DescriptionSafe",
847
896
  # pattern_name: "PatternName", # required
848
897
  # pattern_regex: "Regex", # required
898
+ # pattern_description: "DescriptionSafe",
899
+ # keyword_regex: "Regex",
849
900
  # },
850
- # enforced_urls: ["InlineRedactionUrl"],
851
- # exempt_urls: ["InlineRedactionUrl"],
852
901
  # redaction_place_holder: { # required
853
- # redaction_place_holder_text: "RedactionPlaceHolderText",
854
902
  # redaction_place_holder_type: "CustomText", # required, accepts CustomText
903
+ # redaction_place_holder_text: "RedactionPlaceHolderText",
855
904
  # },
905
+ # enforced_urls: ["InlineRedactionUrl"],
906
+ # exempt_urls: ["InlineRedactionUrl"],
907
+ # confidence_level: 1,
856
908
  # },
857
909
  # ],
910
+ # global_enforced_urls: ["InlineRedactionUrl"],
911
+ # global_exempt_urls: ["InlineRedactionUrl"],
912
+ # global_confidence_level: 1,
858
913
  # },
859
- # tags: [
860
- # {
861
- # key: "TagKey", # required
862
- # value: "TagValue", # required
863
- # },
864
- # ],
914
+ # client_token: "ClientToken",
865
915
  # })
866
916
  #
867
917
  # @example Response structure
@@ -880,18 +930,14 @@ module Aws::WorkSpacesWeb
880
930
  # Creates an identity provider resource that is then associated with a
881
931
  # web portal.
882
932
  #
883
- # @option params [String] :client_token
884
- # A unique, case-sensitive identifier that you provide to ensure the
885
- # idempotency of the request. Idempotency ensures that an API request
886
- # completes only once. With an idempotent request, if the original
887
- # request completes successfully, subsequent retries with the same
888
- # client token returns the result from the original successful request.
933
+ # @option params [required, String] :portal_arn
934
+ # The ARN of the web portal.
889
935
  #
890
- # If you do not specify a client token, one is automatically generated
891
- # by the Amazon Web Services SDK.
936
+ # @option params [required, String] :identity_provider_name
937
+ # The identity provider name.
892
938
  #
893
- # **A suitable default value is auto-generated.** You should normally
894
- # not need to pass this option.**
939
+ # @option params [required, String] :identity_provider_type
940
+ # The identity provider type.
895
941
  #
896
942
  # @option params [required, Hash<String,String>] :identity_provider_details
897
943
  # The identity provider details. The following list describes the
@@ -960,14 +1006,18 @@ module Aws::WorkSpacesWeb
960
1006
  #
961
1007
  # * `EncryptedResponses` (boolean) *optional*
962
1008
  #
963
- # @option params [required, String] :identity_provider_name
964
- # The identity provider name.
1009
+ # @option params [String] :client_token
1010
+ # A unique, case-sensitive identifier that you provide to ensure the
1011
+ # idempotency of the request. Idempotency ensures that an API request
1012
+ # completes only once. With an idempotent request, if the original
1013
+ # request completes successfully, subsequent retries with the same
1014
+ # client token returns the result from the original successful request.
965
1015
  #
966
- # @option params [required, String] :identity_provider_type
967
- # The identity provider type.
1016
+ # If you do not specify a client token, one is automatically generated
1017
+ # by the Amazon Web Services SDK.
968
1018
  #
969
- # @option params [required, String] :portal_arn
970
- # The ARN of the web portal.
1019
+ # **A suitable default value is auto-generated.** You should normally
1020
+ # not need to pass this option.**
971
1021
  #
972
1022
  # @option params [Array<Types::Tag>] :tags
973
1023
  # The tags to add to the identity provider resource. A tag is a
@@ -980,13 +1030,13 @@ module Aws::WorkSpacesWeb
980
1030
  # @example Request syntax with placeholder values
981
1031
  #
982
1032
  # resp = client.create_identity_provider({
983
- # client_token: "ClientToken",
1033
+ # portal_arn: "ARN", # required
1034
+ # identity_provider_name: "IdentityProviderName", # required
1035
+ # identity_provider_type: "SAML", # required, accepts SAML, Facebook, Google, LoginWithAmazon, SignInWithApple, OIDC
984
1036
  # identity_provider_details: { # required
985
1037
  # "StringType" => "StringType",
986
1038
  # },
987
- # identity_provider_name: "IdentityProviderName", # required
988
- # identity_provider_type: "SAML", # required, accepts SAML, Facebook, Google, LoginWithAmazon, SignInWithApple, OIDC
989
- # portal_arn: "ARN", # required
1039
+ # client_token: "ClientToken",
990
1040
  # tags: [
991
1041
  # {
992
1042
  # key: "TagKey", # required
@@ -1011,9 +1061,25 @@ module Aws::WorkSpacesWeb
1011
1061
  # Creates an IP access settings resource that can be associated with a
1012
1062
  # web portal.
1013
1063
  #
1064
+ # @option params [String] :display_name
1065
+ # The display name of the IP access settings.
1066
+ #
1067
+ # @option params [String] :description
1068
+ # The description of the IP access settings.
1069
+ #
1070
+ # @option params [Array<Types::Tag>] :tags
1071
+ # The tags to add to the IP access settings resource. A tag is a
1072
+ # key-value pair.
1073
+ #
1074
+ # @option params [String] :customer_managed_key
1075
+ # The custom managed key of the IP access settings.
1076
+ #
1014
1077
  # @option params [Hash<String,String>] :additional_encryption_context
1015
1078
  # Additional encryption context of the IP access settings.
1016
1079
  #
1080
+ # @option params [required, Array<Types::IpRule>] :ip_rules
1081
+ # The IP rules of the IP access settings.
1082
+ #
1017
1083
  # @option params [String] :client_token
1018
1084
  # A unique, case-sensitive identifier that you provide to ensure the
1019
1085
  # idempotency of the request. Idempotency ensures that an API request
@@ -1027,22 +1093,6 @@ module Aws::WorkSpacesWeb
1027
1093
  # **A suitable default value is auto-generated.** You should normally
1028
1094
  # not need to pass this option.**
1029
1095
  #
1030
- # @option params [String] :customer_managed_key
1031
- # The custom managed key of the IP access settings.
1032
- #
1033
- # @option params [String] :description
1034
- # The description of the IP access settings.
1035
- #
1036
- # @option params [String] :display_name
1037
- # The display name of the IP access settings.
1038
- #
1039
- # @option params [required, Array<Types::IpRule>] :ip_rules
1040
- # The IP rules of the IP access settings.
1041
- #
1042
- # @option params [Array<Types::Tag>] :tags
1043
- # The tags to add to the IP access settings resource. A tag is a
1044
- # key-value pair.
1045
- #
1046
1096
  # @return [Types::CreateIpAccessSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1047
1097
  #
1048
1098
  # * {Types::CreateIpAccessSettingsResponse#ip_access_settings_arn #ip_access_settings_arn} => String
@@ -1050,25 +1100,25 @@ module Aws::WorkSpacesWeb
1050
1100
  # @example Request syntax with placeholder values
1051
1101
  #
1052
1102
  # resp = client.create_ip_access_settings({
1103
+ # display_name: "DisplayName",
1104
+ # description: "Description",
1105
+ # tags: [
1106
+ # {
1107
+ # key: "TagKey", # required
1108
+ # value: "TagValue", # required
1109
+ # },
1110
+ # ],
1111
+ # customer_managed_key: "keyArn",
1053
1112
  # additional_encryption_context: {
1054
1113
  # "StringType" => "StringType",
1055
1114
  # },
1056
- # client_token: "ClientToken",
1057
- # customer_managed_key: "keyArn",
1058
- # description: "Description",
1059
- # display_name: "DisplayName",
1060
1115
  # ip_rules: [ # required
1061
1116
  # {
1062
- # description: "Description",
1063
1117
  # ip_range: "IpRange", # required
1118
+ # description: "Description",
1064
1119
  # },
1065
1120
  # ],
1066
- # tags: [
1067
- # {
1068
- # key: "TagKey", # required
1069
- # value: "TagValue", # required
1070
- # },
1071
- # ],
1121
+ # client_token: "ClientToken",
1072
1122
  # })
1073
1123
  #
1074
1124
  # @example Response structure
@@ -1088,6 +1138,22 @@ module Aws::WorkSpacesWeb
1088
1138
  # portal. Once associated with a web portal, network settings define how
1089
1139
  # streaming instances will connect with your specified VPC.
1090
1140
  #
1141
+ # @option params [required, String] :vpc_id
1142
+ # The VPC that streaming instances will connect to.
1143
+ #
1144
+ # @option params [required, Array<String>] :subnet_ids
1145
+ # The subnets in which network interfaces are created to connect
1146
+ # streaming instances to your VPC. At least two of these subnets must be
1147
+ # in different availability zones.
1148
+ #
1149
+ # @option params [required, Array<String>] :security_group_ids
1150
+ # One or more security groups used to control access from streaming
1151
+ # instances to your VPC.
1152
+ #
1153
+ # @option params [Array<Types::Tag>] :tags
1154
+ # The tags to add to the network settings resource. A tag is a key-value
1155
+ # pair.
1156
+ #
1091
1157
  # @option params [String] :client_token
1092
1158
  # A unique, case-sensitive identifier that you provide to ensure the
1093
1159
  # idempotency of the request. Idempotency ensures that an API request
@@ -1101,22 +1167,6 @@ module Aws::WorkSpacesWeb
1101
1167
  # **A suitable default value is auto-generated.** You should normally
1102
1168
  # not need to pass this option.**
1103
1169
  #
1104
- # @option params [required, Array<String>] :security_group_ids
1105
- # One or more security groups used to control access from streaming
1106
- # instances to your VPC.
1107
- #
1108
- # @option params [required, Array<String>] :subnet_ids
1109
- # The subnets in which network interfaces are created to connect
1110
- # streaming instances to your VPC. At least two of these subnets must be
1111
- # in different availability zones.
1112
- #
1113
- # @option params [Array<Types::Tag>] :tags
1114
- # The tags to add to the network settings resource. A tag is a key-value
1115
- # pair.
1116
- #
1117
- # @option params [required, String] :vpc_id
1118
- # The VPC that streaming instances will connect to.
1119
- #
1120
1170
  # @return [Types::CreateNetworkSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1121
1171
  #
1122
1172
  # * {Types::CreateNetworkSettingsResponse#network_settings_arn #network_settings_arn} => String
@@ -1124,16 +1174,16 @@ module Aws::WorkSpacesWeb
1124
1174
  # @example Request syntax with placeholder values
1125
1175
  #
1126
1176
  # resp = client.create_network_settings({
1127
- # client_token: "ClientToken",
1128
- # security_group_ids: ["SecurityGroupId"], # required
1177
+ # vpc_id: "VpcId", # required
1129
1178
  # subnet_ids: ["SubnetId"], # required
1179
+ # security_group_ids: ["SecurityGroupId"], # required
1130
1180
  # tags: [
1131
1181
  # {
1132
1182
  # key: "TagKey", # required
1133
1183
  # value: "TagValue", # required
1134
1184
  # },
1135
1185
  # ],
1136
- # vpc_id: "VpcId", # required
1186
+ # client_token: "ClientToken",
1137
1187
  # })
1138
1188
  #
1139
1189
  # @example Response structure
@@ -1151,9 +1201,32 @@ module Aws::WorkSpacesWeb
1151
1201
 
1152
1202
  # Creates a web portal.
1153
1203
  #
1204
+ # @option params [String] :display_name
1205
+ # The name of the web portal. This is not visible to users who log into
1206
+ # the web portal.
1207
+ #
1208
+ # @option params [Array<Types::Tag>] :tags
1209
+ # The tags to add to the web portal. A tag is a key-value pair.
1210
+ #
1211
+ # @option params [String] :customer_managed_key
1212
+ # The customer managed key of the web portal.
1213
+ #
1154
1214
  # @option params [Hash<String,String>] :additional_encryption_context
1155
1215
  # The additional encryption context of the portal.
1156
1216
  #
1217
+ # @option params [String] :client_token
1218
+ # A unique, case-sensitive identifier that you provide to ensure the
1219
+ # idempotency of the request. Idempotency ensures that an API request
1220
+ # completes only once. With an idempotent request, if the original
1221
+ # request completes successfully, subsequent retries with the same
1222
+ # client token returns the result from the original successful request.
1223
+ #
1224
+ # If you do not specify a client token, one is automatically generated
1225
+ # by the Amazon Web Services SDK.
1226
+ #
1227
+ # **A suitable default value is auto-generated.** You should normally
1228
+ # not need to pass this option.**
1229
+ #
1157
1230
  # @option params [String] :authentication_type
1158
1231
  # The type of authentication integration points used when signing into
1159
1232
  # the web portal. Defaults to `Standard`.
@@ -1169,71 +1242,199 @@ module Aws::WorkSpacesWeb
1169
1242
  # provider integration), plus user and group access to your web portal,
1170
1243
  # can be configured in the IAM Identity Center.
1171
1244
  #
1245
+ # @option params [String] :instance_type
1246
+ # The type and resources of the underlying instance.
1247
+ #
1248
+ # @option params [Integer] :max_concurrent_sessions
1249
+ # The maximum number of concurrent sessions for the portal.
1250
+ #
1251
+ # @return [Types::CreatePortalResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1252
+ #
1253
+ # * {Types::CreatePortalResponse#portal_arn #portal_arn} => String
1254
+ # * {Types::CreatePortalResponse#portal_endpoint #portal_endpoint} => String
1255
+ #
1256
+ # @example Request syntax with placeholder values
1257
+ #
1258
+ # resp = client.create_portal({
1259
+ # display_name: "DisplayName",
1260
+ # tags: [
1261
+ # {
1262
+ # key: "TagKey", # required
1263
+ # value: "TagValue", # required
1264
+ # },
1265
+ # ],
1266
+ # customer_managed_key: "keyArn",
1267
+ # additional_encryption_context: {
1268
+ # "StringType" => "StringType",
1269
+ # },
1270
+ # client_token: "ClientToken",
1271
+ # authentication_type: "Standard", # accepts Standard, IAM_Identity_Center
1272
+ # instance_type: "standard.regular", # accepts standard.regular, standard.large, standard.xlarge
1273
+ # max_concurrent_sessions: 1,
1274
+ # })
1275
+ #
1276
+ # @example Response structure
1277
+ #
1278
+ # resp.portal_arn #=> String
1279
+ # resp.portal_endpoint #=> String
1280
+ #
1281
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/CreatePortal AWS API Documentation
1282
+ #
1283
+ # @overload create_portal(params = {})
1284
+ # @param [Hash] params ({})
1285
+ def create_portal(params = {}, options = {})
1286
+ req = build_request(:create_portal, params)
1287
+ req.send_request(options)
1288
+ end
1289
+
1290
+ # Creates a session logger.
1291
+ #
1292
+ # @option params [required, Types::EventFilter] :event_filter
1293
+ # The filter that specifies the events to monitor.
1294
+ #
1295
+ # @option params [required, Types::LogConfiguration] :log_configuration
1296
+ # The configuration that specifies where logs are delivered.
1297
+ #
1298
+ # @option params [String] :display_name
1299
+ # The human-readable display name for the session logger resource.
1300
+ #
1301
+ # @option params [String] :customer_managed_key
1302
+ # The custom managed key of the session logger.
1303
+ #
1304
+ # @option params [Hash<String,String>] :additional_encryption_context
1305
+ # The additional encryption context of the session logger.
1306
+ #
1307
+ # @option params [Array<Types::Tag>] :tags
1308
+ # The tags to add to the session logger.
1309
+ #
1172
1310
  # @option params [String] :client_token
1173
1311
  # A unique, case-sensitive identifier that you provide to ensure the
1174
1312
  # idempotency of the request. Idempotency ensures that an API request
1175
1313
  # completes only once. With an idempotent request, if the original
1176
1314
  # request completes successfully, subsequent retries with the same
1177
1315
  # client token returns the result from the original successful request.
1178
- #
1179
1316
  # If you do not specify a client token, one is automatically generated
1180
- # by the Amazon Web Services SDK.
1317
+ # by the AWS SDK.
1181
1318
  #
1182
1319
  # **A suitable default value is auto-generated.** You should normally
1183
1320
  # not need to pass this option.**
1184
1321
  #
1185
- # @option params [String] :customer_managed_key
1186
- # The customer managed key of the web portal.
1322
+ # @return [Types::CreateSessionLoggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1187
1323
  #
1188
- # @option params [String] :display_name
1189
- # The name of the web portal. This is not visible to users who log into
1190
- # the web portal.
1324
+ # * {Types::CreateSessionLoggerResponse#session_logger_arn #session_logger_arn} => String
1191
1325
  #
1192
- # @option params [String] :instance_type
1193
- # The type and resources of the underlying instance.
1194
1326
  #
1195
- # @option params [Integer] :max_concurrent_sessions
1196
- # The maximum number of concurrent sessions for the portal.
1327
+ # @example Example: Create Session Logger with All Events
1197
1328
  #
1198
- # @option params [Array<Types::Tag>] :tags
1199
- # The tags to add to the web portal. A tag is a key-value pair.
1329
+ # # Creates a session logger that captures all events and stores them in S3 with JSON format and flat folder structure
1200
1330
  #
1201
- # @return [Types::CreatePortalResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1331
+ # resp = client.create_session_logger({
1332
+ # display_name: "Session Logger with All Events",
1333
+ # event_filter: {
1334
+ # all: {
1335
+ # },
1336
+ # },
1337
+ # log_configuration: {
1338
+ # s3: {
1339
+ # bucket: "my-session-logs-bucket",
1340
+ # bucket_owner: "123456789012",
1341
+ # folder_structure: "Flat",
1342
+ # key_prefix: "session-logs/all/events",
1343
+ # log_file_format: "Json",
1344
+ # },
1345
+ # },
1346
+ # })
1202
1347
  #
1203
- # * {Types::CreatePortalResponse#portal_arn #portal_arn} => String
1204
- # * {Types::CreatePortalResponse#portal_endpoint #portal_endpoint} => String
1348
+ # resp.to_h outputs the following:
1349
+ # {
1350
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
1351
+ # }
1352
+ #
1353
+ # @example Example: Create Session Logger with Specific Events
1354
+ #
1355
+ # # Creates a session logger that captures only specific events with JSONLines format and nested folder structure
1356
+ #
1357
+ # resp = client.create_session_logger({
1358
+ # additional_encryption_context: {
1359
+ # "EncryptionContextKey" => "EncryptionContextValue",
1360
+ # },
1361
+ # customer_managed_key: "arn:aws:kms:us-west-2:123456789012:key/12345678-1234-1234-1234-123456789012",
1362
+ # display_name: "Session Logger with Each Events",
1363
+ # event_filter: {
1364
+ # include: [
1365
+ # "SessionStart",
1366
+ # "SessionEnd",
1367
+ # "UrlLoad",
1368
+ # "WebsiteInteract",
1369
+ # ],
1370
+ # },
1371
+ # log_configuration: {
1372
+ # s3: {
1373
+ # bucket: "my-session-logs-bucket",
1374
+ # bucket_owner: "123456789012",
1375
+ # folder_structure: "NestedByDate",
1376
+ # key_prefix: "session-logs/each/event",
1377
+ # log_file_format: "JSONLines",
1378
+ # },
1379
+ # },
1380
+ # tags: [
1381
+ # {
1382
+ # key: "KEY-1",
1383
+ # value: "VALUE-1",
1384
+ # },
1385
+ # {
1386
+ # key: "KEY-2",
1387
+ # value: "VALUE-2",
1388
+ # },
1389
+ # ],
1390
+ # })
1391
+ #
1392
+ # resp.to_h outputs the following:
1393
+ # {
1394
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/87654321-4321-4321-4321-210987654321",
1395
+ # }
1205
1396
  #
1206
1397
  # @example Request syntax with placeholder values
1207
1398
  #
1208
- # resp = client.create_portal({
1399
+ # resp = client.create_session_logger({
1400
+ # event_filter: { # required
1401
+ # all: {
1402
+ # },
1403
+ # include: ["WebsiteInteract"], # accepts WebsiteInteract, FileDownloadFromSecureBrowserToRemoteDisk, FileTransferFromRemoteToLocalDisk, FileTransferFromLocalToRemoteDisk, FileUploadFromRemoteDiskToSecureBrowser, ContentPasteToWebsite, ContentTransferFromLocalToRemoteClipboard, ContentCopyFromWebsite, UrlLoad, TabOpen, TabClose, PrintJobSubmit, SessionConnect, SessionStart, SessionDisconnect, SessionEnd
1404
+ # },
1405
+ # log_configuration: { # required
1406
+ # s3: {
1407
+ # bucket: "S3Bucket", # required
1408
+ # key_prefix: "S3KeyPrefix",
1409
+ # bucket_owner: "S3BucketOwner",
1410
+ # log_file_format: "JSONLines", # required, accepts JSONLines, Json
1411
+ # folder_structure: "Flat", # required, accepts Flat, NestedByDate
1412
+ # },
1413
+ # },
1414
+ # display_name: "DisplayNameSafe",
1415
+ # customer_managed_key: "keyArn",
1209
1416
  # additional_encryption_context: {
1210
1417
  # "StringType" => "StringType",
1211
1418
  # },
1212
- # authentication_type: "Standard", # accepts Standard, IAM_Identity_Center
1213
- # client_token: "ClientToken",
1214
- # customer_managed_key: "keyArn",
1215
- # display_name: "DisplayName",
1216
- # instance_type: "standard.regular", # accepts standard.regular, standard.large, standard.xlarge
1217
- # max_concurrent_sessions: 1,
1218
1419
  # tags: [
1219
1420
  # {
1220
1421
  # key: "TagKey", # required
1221
1422
  # value: "TagValue", # required
1222
1423
  # },
1223
1424
  # ],
1425
+ # client_token: "ClientToken",
1224
1426
  # })
1225
1427
  #
1226
1428
  # @example Response structure
1227
1429
  #
1228
- # resp.portal_arn #=> String
1229
- # resp.portal_endpoint #=> String
1430
+ # resp.session_logger_arn #=> String
1230
1431
  #
1231
- # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/CreatePortal AWS API Documentation
1432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/CreateSessionLogger AWS API Documentation
1232
1433
  #
1233
- # @overload create_portal(params = {})
1434
+ # @overload create_session_logger(params = {})
1234
1435
  # @param [Hash] params ({})
1235
- def create_portal(params = {}, options = {})
1236
- req = build_request(:create_portal, params)
1436
+ def create_session_logger(params = {}, options = {})
1437
+ req = build_request(:create_session_logger, params)
1237
1438
  req.send_request(options)
1238
1439
  end
1239
1440
 
@@ -1248,6 +1449,9 @@ module Aws::WorkSpacesWeb
1248
1449
  # @option params [required, Array<String, StringIO, File>] :certificate_list
1249
1450
  # A list of CA certificates to be added to the trust store.
1250
1451
  #
1452
+ # @option params [Array<Types::Tag>] :tags
1453
+ # The tags to add to the trust store. A tag is a key-value pair.
1454
+ #
1251
1455
  # @option params [String] :client_token
1252
1456
  # A unique, case-sensitive identifier that you provide to ensure the
1253
1457
  # idempotency of the request. Idempotency ensures that an API request
@@ -1261,9 +1465,6 @@ module Aws::WorkSpacesWeb
1261
1465
  # **A suitable default value is auto-generated.** You should normally
1262
1466
  # not need to pass this option.**
1263
1467
  #
1264
- # @option params [Array<Types::Tag>] :tags
1265
- # The tags to add to the trust store. A tag is a key-value pair.
1266
- #
1267
1468
  # @return [Types::CreateTrustStoreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1268
1469
  #
1269
1470
  # * {Types::CreateTrustStoreResponse#trust_store_arn #trust_store_arn} => String
@@ -1272,13 +1473,13 @@ module Aws::WorkSpacesWeb
1272
1473
  #
1273
1474
  # resp = client.create_trust_store({
1274
1475
  # certificate_list: ["data"], # required
1275
- # client_token: "ClientToken",
1276
1476
  # tags: [
1277
1477
  # {
1278
1478
  # key: "TagKey", # required
1279
1479
  # value: "TagValue", # required
1280
1480
  # },
1281
1481
  # ],
1482
+ # client_token: "ClientToken",
1282
1483
  # })
1283
1484
  #
1284
1485
  # @example Response structure
@@ -1297,6 +1498,13 @@ module Aws::WorkSpacesWeb
1297
1498
  # Creates a user access logging settings resource that can be associated
1298
1499
  # with a web portal.
1299
1500
  #
1501
+ # @option params [required, String] :kinesis_stream_arn
1502
+ # The ARN of the Kinesis stream.
1503
+ #
1504
+ # @option params [Array<Types::Tag>] :tags
1505
+ # The tags to add to the user settings resource. A tag is a key-value
1506
+ # pair.
1507
+ #
1300
1508
  # @option params [String] :client_token
1301
1509
  # A unique, case-sensitive identifier that you provide to ensure the
1302
1510
  # idempotency of the request. Idempotency ensures that an API request
@@ -1310,13 +1518,6 @@ module Aws::WorkSpacesWeb
1310
1518
  # **A suitable default value is auto-generated.** You should normally
1311
1519
  # not need to pass this option.**
1312
1520
  #
1313
- # @option params [required, String] :kinesis_stream_arn
1314
- # The ARN of the Kinesis stream.
1315
- #
1316
- # @option params [Array<Types::Tag>] :tags
1317
- # The tags to add to the user settings resource. A tag is a key-value
1318
- # pair.
1319
- #
1320
1521
  # @return [Types::CreateUserAccessLoggingSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1321
1522
  #
1322
1523
  # * {Types::CreateUserAccessLoggingSettingsResponse#user_access_logging_settings_arn #user_access_logging_settings_arn} => String
@@ -1324,7 +1525,6 @@ module Aws::WorkSpacesWeb
1324
1525
  # @example Request syntax with placeholder values
1325
1526
  #
1326
1527
  # resp = client.create_user_access_logging_settings({
1327
- # client_token: "ClientToken",
1328
1528
  # kinesis_stream_arn: "KinesisStreamArn", # required
1329
1529
  # tags: [
1330
1530
  # {
@@ -1332,6 +1532,7 @@ module Aws::WorkSpacesWeb
1332
1532
  # value: "TagValue", # required
1333
1533
  # },
1334
1534
  # ],
1535
+ # client_token: "ClientToken",
1335
1536
  # })
1336
1537
  #
1337
1538
  # @example Response structure
@@ -1352,8 +1553,37 @@ module Aws::WorkSpacesWeb
1352
1553
  # users can transfer data between a streaming session and the their
1353
1554
  # local devices.
1354
1555
  #
1355
- # @option params [Hash<String,String>] :additional_encryption_context
1356
- # The additional encryption context of the user settings.
1556
+ # @option params [required, String] :copy_allowed
1557
+ # Specifies whether the user can copy text from the streaming session to
1558
+ # the local device.
1559
+ #
1560
+ # @option params [required, String] :paste_allowed
1561
+ # Specifies whether the user can paste text from the local device to the
1562
+ # streaming session.
1563
+ #
1564
+ # @option params [required, String] :download_allowed
1565
+ # Specifies whether the user can download files from the streaming
1566
+ # session to the local device.
1567
+ #
1568
+ # @option params [required, String] :upload_allowed
1569
+ # Specifies whether the user can upload files from the local device to
1570
+ # the streaming session.
1571
+ #
1572
+ # @option params [required, String] :print_allowed
1573
+ # Specifies whether the user can print to the local device.
1574
+ #
1575
+ # @option params [Array<Types::Tag>] :tags
1576
+ # The tags to add to the user settings resource. A tag is a key-value
1577
+ # pair.
1578
+ #
1579
+ # @option params [Integer] :disconnect_timeout_in_minutes
1580
+ # The amount of time that a streaming session remains active after users
1581
+ # disconnect.
1582
+ #
1583
+ # @option params [Integer] :idle_disconnect_timeout_in_minutes
1584
+ # The amount of time that users can be idle (inactive) before they are
1585
+ # disconnected from their streaming session and the disconnect timeout
1586
+ # interval begins.
1357
1587
  #
1358
1588
  # @option params [String] :client_token
1359
1589
  # A unique, case-sensitive identifier that you provide to ensure the
@@ -1372,42 +1602,17 @@ module Aws::WorkSpacesWeb
1372
1602
  # The configuration that specifies which cookies should be synchronized
1373
1603
  # from the end user's local browser to the remote browser.
1374
1604
  #
1375
- # @option params [required, String] :copy_allowed
1376
- # Specifies whether the user can copy text from the streaming session to
1377
- # the local device.
1378
- #
1379
1605
  # @option params [String] :customer_managed_key
1380
1606
  # The customer managed key used to encrypt sensitive information in the
1381
1607
  # user settings.
1382
1608
  #
1609
+ # @option params [Hash<String,String>] :additional_encryption_context
1610
+ # The additional encryption context of the user settings.
1611
+ #
1383
1612
  # @option params [String] :deep_link_allowed
1384
1613
  # Specifies whether the user can use deep links that open automatically
1385
1614
  # when connecting to a session.
1386
1615
  #
1387
- # @option params [Integer] :disconnect_timeout_in_minutes
1388
- # The amount of time that a streaming session remains active after users
1389
- # disconnect.
1390
- #
1391
- # @option params [required, String] :download_allowed
1392
- # Specifies whether the user can download files from the streaming
1393
- # session to the local device.
1394
- #
1395
- # @option params [Integer] :idle_disconnect_timeout_in_minutes
1396
- # The amount of time that users can be idle (inactive) before they are
1397
- # disconnected from their streaming session and the disconnect timeout
1398
- # interval begins.
1399
- #
1400
- # @option params [required, String] :paste_allowed
1401
- # Specifies whether the user can paste text from the local device to the
1402
- # streaming session.
1403
- #
1404
- # @option params [required, String] :print_allowed
1405
- # Specifies whether the user can print to the local device.
1406
- #
1407
- # @option params [Array<Types::Tag>] :tags
1408
- # The tags to add to the user settings resource. A tag is a key-value
1409
- # pair.
1410
- #
1411
1616
  # @option params [Types::ToolbarConfiguration] :toolbar_configuration
1412
1617
  # The configuration of the toolbar. This allows administrators to select
1413
1618
  # the toolbar type and visual mode, set maximum display resolution for
@@ -1415,10 +1620,6 @@ module Aws::WorkSpacesWeb
1415
1620
  # sessions. If administrators do not modify these settings, end users
1416
1621
  # retain control over their toolbar preferences.
1417
1622
  #
1418
- # @option params [required, String] :upload_allowed
1419
- # Specifies whether the user can upload files from the local device to
1420
- # the streaming session.
1421
- #
1422
1623
  # @return [Types::CreateUserSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1423
1624
  #
1424
1625
  # * {Types::CreateUserSettingsResponse#user_settings_arn #user_settings_arn} => String
@@ -1426,9 +1627,19 @@ module Aws::WorkSpacesWeb
1426
1627
  # @example Request syntax with placeholder values
1427
1628
  #
1428
1629
  # resp = client.create_user_settings({
1429
- # additional_encryption_context: {
1430
- # "StringType" => "StringType",
1431
- # },
1630
+ # copy_allowed: "Disabled", # required, accepts Disabled, Enabled
1631
+ # paste_allowed: "Disabled", # required, accepts Disabled, Enabled
1632
+ # download_allowed: "Disabled", # required, accepts Disabled, Enabled
1633
+ # upload_allowed: "Disabled", # required, accepts Disabled, Enabled
1634
+ # print_allowed: "Disabled", # required, accepts Disabled, Enabled
1635
+ # tags: [
1636
+ # {
1637
+ # key: "TagKey", # required
1638
+ # value: "TagValue", # required
1639
+ # },
1640
+ # ],
1641
+ # disconnect_timeout_in_minutes: 1,
1642
+ # idle_disconnect_timeout_in_minutes: 1,
1432
1643
  # client_token: "ClientToken",
1433
1644
  # cookie_synchronization_configuration: {
1434
1645
  # allowlist: [ # required
@@ -1446,27 +1657,17 @@ module Aws::WorkSpacesWeb
1446
1657
  # },
1447
1658
  # ],
1448
1659
  # },
1449
- # copy_allowed: "Disabled", # required, accepts Disabled, Enabled
1450
1660
  # customer_managed_key: "keyArn",
1661
+ # additional_encryption_context: {
1662
+ # "StringType" => "StringType",
1663
+ # },
1451
1664
  # deep_link_allowed: "Disabled", # accepts Disabled, Enabled
1452
- # disconnect_timeout_in_minutes: 1,
1453
- # download_allowed: "Disabled", # required, accepts Disabled, Enabled
1454
- # idle_disconnect_timeout_in_minutes: 1,
1455
- # paste_allowed: "Disabled", # required, accepts Disabled, Enabled
1456
- # print_allowed: "Disabled", # required, accepts Disabled, Enabled
1457
- # tags: [
1458
- # {
1459
- # key: "TagKey", # required
1460
- # value: "TagValue", # required
1461
- # },
1462
- # ],
1463
1665
  # toolbar_configuration: {
1464
- # hidden_toolbar_items: ["Windows"], # accepts Windows, DualMonitor, FullScreen, Webcam, Microphone
1465
- # max_display_resolution: "size4096X2160", # accepts size4096X2160, size3840X2160, size3440X1440, size2560X1440, size1920X1080, size1280X720, size1024X768, size800X600
1466
1666
  # toolbar_type: "Floating", # accepts Floating, Docked
1467
1667
  # visual_mode: "Dark", # accepts Dark, Light
1668
+ # hidden_toolbar_items: ["Windows"], # accepts Windows, DualMonitor, FullScreen, Webcam, Microphone
1669
+ # max_display_resolution: "size4096X2160", # accepts size4096X2160, size3840X2160, size3440X1440, size2560X1440, size1920X1080, size1280X720, size1024X768, size800X600
1468
1670
  # },
1469
- # upload_allowed: "Disabled", # required, accepts Disabled, Enabled
1470
1671
  # })
1471
1672
  #
1472
1673
  # @example Response structure
@@ -1614,6 +1815,41 @@ module Aws::WorkSpacesWeb
1614
1815
  req.send_request(options)
1615
1816
  end
1616
1817
 
1818
+ # Deletes a session logger resource.
1819
+ #
1820
+ # @option params [required, String] :session_logger_arn
1821
+ # The ARN of the session logger.
1822
+ #
1823
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1824
+ #
1825
+ #
1826
+ # @example Example: Delete Session Logger
1827
+ #
1828
+ # # Deletes a session logger resource
1829
+ #
1830
+ # resp = client.delete_session_logger({
1831
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
1832
+ # })
1833
+ #
1834
+ # resp.to_h outputs the following:
1835
+ # {
1836
+ # }
1837
+ #
1838
+ # @example Request syntax with placeholder values
1839
+ #
1840
+ # resp = client.delete_session_logger({
1841
+ # session_logger_arn: "ARN", # required
1842
+ # })
1843
+ #
1844
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/DeleteSessionLogger AWS API Documentation
1845
+ #
1846
+ # @overload delete_session_logger(params = {})
1847
+ # @param [Hash] params ({})
1848
+ def delete_session_logger(params = {}, options = {})
1849
+ req = build_request(:delete_session_logger, params)
1850
+ req.send_request(options)
1851
+ end
1852
+
1617
1853
  # Deletes the trust store.
1618
1854
  #
1619
1855
  # @option params [required, String] :trust_store_arn
@@ -1768,6 +2004,41 @@ module Aws::WorkSpacesWeb
1768
2004
  req.send_request(options)
1769
2005
  end
1770
2006
 
2007
+ # Disassociates a session logger from a portal.
2008
+ #
2009
+ # @option params [required, String] :portal_arn
2010
+ # The ARN of the portal to disassociate from the a session logger.
2011
+ #
2012
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2013
+ #
2014
+ #
2015
+ # @example Example: Disassociate Session Logger from Portal
2016
+ #
2017
+ # # Removes the association between a session logger and a portal
2018
+ #
2019
+ # resp = client.disassociate_session_logger({
2020
+ # portal_arn: "arn:aws:workspaces-web:us-west-2:123456789012:portal/12345678-1234-1234-1234-123456789012",
2021
+ # })
2022
+ #
2023
+ # resp.to_h outputs the following:
2024
+ # {
2025
+ # }
2026
+ #
2027
+ # @example Request syntax with placeholder values
2028
+ #
2029
+ # resp = client.disassociate_session_logger({
2030
+ # portal_arn: "ARN", # required
2031
+ # })
2032
+ #
2033
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/DisassociateSessionLogger AWS API Documentation
2034
+ #
2035
+ # @overload disassociate_session_logger(params = {})
2036
+ # @param [Hash] params ({})
2037
+ def disassociate_session_logger(params = {}, options = {})
2038
+ req = build_request(:disassociate_session_logger, params)
2039
+ req.send_request(options)
2040
+ end
2041
+
1771
2042
  # Disassociates a trust store from a web portal.
1772
2043
  #
1773
2044
  # @option params [required, String] :portal_arn
@@ -1877,13 +2148,13 @@ module Aws::WorkSpacesWeb
1877
2148
  #
1878
2149
  # @example Response structure
1879
2150
  #
1880
- # resp.browser_settings.additional_encryption_context #=> Hash
1881
- # resp.browser_settings.additional_encryption_context["StringType"] #=> String
2151
+ # resp.browser_settings.browser_settings_arn #=> String
1882
2152
  # resp.browser_settings.associated_portal_arns #=> Array
1883
2153
  # resp.browser_settings.associated_portal_arns[0] #=> String
1884
2154
  # resp.browser_settings.browser_policy #=> String
1885
- # resp.browser_settings.browser_settings_arn #=> String
1886
2155
  # resp.browser_settings.customer_managed_key #=> String
2156
+ # resp.browser_settings.additional_encryption_context #=> Hash
2157
+ # resp.browser_settings.additional_encryption_context["StringType"] #=> String
1887
2158
  #
1888
2159
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetBrowserSettings AWS API Documentation
1889
2160
  #
@@ -1911,33 +2182,33 @@ module Aws::WorkSpacesWeb
1911
2182
  #
1912
2183
  # @example Response structure
1913
2184
  #
1914
- # resp.data_protection_settings.additional_encryption_context #=> Hash
1915
- # resp.data_protection_settings.additional_encryption_context["StringType"] #=> String
1916
- # resp.data_protection_settings.associated_portal_arns #=> Array
1917
- # resp.data_protection_settings.associated_portal_arns[0] #=> String
1918
- # resp.data_protection_settings.creation_date #=> Time
1919
- # resp.data_protection_settings.customer_managed_key #=> String
1920
2185
  # resp.data_protection_settings.data_protection_settings_arn #=> String
1921
- # resp.data_protection_settings.description #=> String
1922
- # resp.data_protection_settings.display_name #=> String
1923
- # resp.data_protection_settings.inline_redaction_configuration.global_confidence_level #=> Integer
1924
- # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls #=> Array
1925
- # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls[0] #=> String
1926
- # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls #=> Array
1927
- # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls[0] #=> String
1928
2186
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns #=> Array
1929
2187
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].built_in_pattern_id #=> String
1930
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].confidence_level #=> Integer
1931
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.keyword_regex #=> String
1932
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_description #=> String
1933
2188
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_name #=> String
1934
2189
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_regex #=> String
2190
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_description #=> String
2191
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.keyword_regex #=> String
2192
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_type #=> String, one of "CustomText"
2193
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_text #=> String
1935
2194
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].enforced_urls #=> Array
1936
2195
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].enforced_urls[0] #=> String
1937
2196
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].exempt_urls #=> Array
1938
2197
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].exempt_urls[0] #=> String
1939
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_text #=> String
1940
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_type #=> String, one of "CustomText"
2198
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].confidence_level #=> Integer
2199
+ # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls #=> Array
2200
+ # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls[0] #=> String
2201
+ # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls #=> Array
2202
+ # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls[0] #=> String
2203
+ # resp.data_protection_settings.inline_redaction_configuration.global_confidence_level #=> Integer
2204
+ # resp.data_protection_settings.associated_portal_arns #=> Array
2205
+ # resp.data_protection_settings.associated_portal_arns[0] #=> String
2206
+ # resp.data_protection_settings.display_name #=> String
2207
+ # resp.data_protection_settings.description #=> String
2208
+ # resp.data_protection_settings.creation_date #=> Time
2209
+ # resp.data_protection_settings.customer_managed_key #=> String
2210
+ # resp.data_protection_settings.additional_encryption_context #=> Hash
2211
+ # resp.data_protection_settings.additional_encryption_context["StringType"] #=> String
1941
2212
  #
1942
2213
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetDataProtectionSettings AWS API Documentation
1943
2214
  #
@@ -1966,10 +2237,10 @@ module Aws::WorkSpacesWeb
1966
2237
  # @example Response structure
1967
2238
  #
1968
2239
  # resp.identity_provider.identity_provider_arn #=> String
1969
- # resp.identity_provider.identity_provider_details #=> Hash
1970
- # resp.identity_provider.identity_provider_details["StringType"] #=> String
1971
2240
  # resp.identity_provider.identity_provider_name #=> String
1972
2241
  # resp.identity_provider.identity_provider_type #=> String, one of "SAML", "Facebook", "Google", "LoginWithAmazon", "SignInWithApple", "OIDC"
2242
+ # resp.identity_provider.identity_provider_details #=> Hash
2243
+ # resp.identity_provider.identity_provider_details["StringType"] #=> String
1973
2244
  #
1974
2245
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetIdentityProvider AWS API Documentation
1975
2246
  #
@@ -1997,18 +2268,18 @@ module Aws::WorkSpacesWeb
1997
2268
  #
1998
2269
  # @example Response structure
1999
2270
  #
2000
- # resp.ip_access_settings.additional_encryption_context #=> Hash
2001
- # resp.ip_access_settings.additional_encryption_context["StringType"] #=> String
2271
+ # resp.ip_access_settings.ip_access_settings_arn #=> String
2002
2272
  # resp.ip_access_settings.associated_portal_arns #=> Array
2003
2273
  # resp.ip_access_settings.associated_portal_arns[0] #=> String
2004
- # resp.ip_access_settings.creation_date #=> Time
2005
- # resp.ip_access_settings.customer_managed_key #=> String
2006
- # resp.ip_access_settings.description #=> String
2007
- # resp.ip_access_settings.display_name #=> String
2008
- # resp.ip_access_settings.ip_access_settings_arn #=> String
2009
2274
  # resp.ip_access_settings.ip_rules #=> Array
2010
- # resp.ip_access_settings.ip_rules[0].description #=> String
2011
2275
  # resp.ip_access_settings.ip_rules[0].ip_range #=> String
2276
+ # resp.ip_access_settings.ip_rules[0].description #=> String
2277
+ # resp.ip_access_settings.display_name #=> String
2278
+ # resp.ip_access_settings.description #=> String
2279
+ # resp.ip_access_settings.creation_date #=> Time
2280
+ # resp.ip_access_settings.customer_managed_key #=> String
2281
+ # resp.ip_access_settings.additional_encryption_context #=> Hash
2282
+ # resp.ip_access_settings.additional_encryption_context["StringType"] #=> String
2012
2283
  #
2013
2284
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetIpAccessSettings AWS API Documentation
2014
2285
  #
@@ -2036,14 +2307,14 @@ module Aws::WorkSpacesWeb
2036
2307
  #
2037
2308
  # @example Response structure
2038
2309
  #
2310
+ # resp.network_settings.network_settings_arn #=> String
2039
2311
  # resp.network_settings.associated_portal_arns #=> Array
2040
2312
  # resp.network_settings.associated_portal_arns[0] #=> String
2041
- # resp.network_settings.network_settings_arn #=> String
2042
- # resp.network_settings.security_group_ids #=> Array
2043
- # resp.network_settings.security_group_ids[0] #=> String
2313
+ # resp.network_settings.vpc_id #=> String
2044
2314
  # resp.network_settings.subnet_ids #=> Array
2045
2315
  # resp.network_settings.subnet_ids[0] #=> String
2046
- # resp.network_settings.vpc_id #=> String
2316
+ # resp.network_settings.security_group_ids #=> Array
2317
+ # resp.network_settings.security_group_ids[0] #=> String
2047
2318
  #
2048
2319
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetNetworkSettings AWS API Documentation
2049
2320
  #
@@ -2071,27 +2342,28 @@ module Aws::WorkSpacesWeb
2071
2342
  #
2072
2343
  # @example Response structure
2073
2344
  #
2074
- # resp.portal.additional_encryption_context #=> Hash
2075
- # resp.portal.additional_encryption_context["StringType"] #=> String
2076
- # resp.portal.authentication_type #=> String, one of "Standard", "IAM_Identity_Center"
2077
- # resp.portal.browser_settings_arn #=> String
2345
+ # resp.portal.portal_arn #=> String
2346
+ # resp.portal.renderer_type #=> String, one of "AppStream"
2078
2347
  # resp.portal.browser_type #=> String, one of "Chrome"
2348
+ # resp.portal.portal_status #=> String, one of "Incomplete", "Pending", "Active"
2349
+ # resp.portal.portal_endpoint #=> String
2350
+ # resp.portal.display_name #=> String
2079
2351
  # resp.portal.creation_date #=> Time
2080
- # resp.portal.customer_managed_key #=> String
2352
+ # resp.portal.browser_settings_arn #=> String
2081
2353
  # resp.portal.data_protection_settings_arn #=> String
2082
- # resp.portal.display_name #=> String
2083
- # resp.portal.instance_type #=> String, one of "standard.regular", "standard.large", "standard.xlarge"
2084
- # resp.portal.ip_access_settings_arn #=> String
2085
- # resp.portal.max_concurrent_sessions #=> Integer
2354
+ # resp.portal.user_settings_arn #=> String
2086
2355
  # resp.portal.network_settings_arn #=> String
2087
- # resp.portal.portal_arn #=> String
2088
- # resp.portal.portal_endpoint #=> String
2089
- # resp.portal.portal_status #=> String, one of "Incomplete", "Pending", "Active"
2090
- # resp.portal.renderer_type #=> String, one of "AppStream"
2091
- # resp.portal.status_reason #=> String
2356
+ # resp.portal.session_logger_arn #=> String
2092
2357
  # resp.portal.trust_store_arn #=> String
2358
+ # resp.portal.status_reason #=> String
2093
2359
  # resp.portal.user_access_logging_settings_arn #=> String
2094
- # resp.portal.user_settings_arn #=> String
2360
+ # resp.portal.authentication_type #=> String, one of "Standard", "IAM_Identity_Center"
2361
+ # resp.portal.ip_access_settings_arn #=> String
2362
+ # resp.portal.customer_managed_key #=> String
2363
+ # resp.portal.additional_encryption_context #=> Hash
2364
+ # resp.portal.additional_encryption_context["StringType"] #=> String
2365
+ # resp.portal.instance_type #=> String, one of "standard.regular", "standard.large", "standard.xlarge"
2366
+ # resp.portal.max_concurrent_sessions #=> Integer
2095
2367
  #
2096
2368
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetPortal AWS API Documentation
2097
2369
  #
@@ -2134,40 +2406,154 @@ module Aws::WorkSpacesWeb
2134
2406
 
2135
2407
  # Gets information for a secure browser session.
2136
2408
  #
2137
- # @option params [required, String] :portal_id
2138
- # The ID of the web portal for the session.
2409
+ # @option params [required, String] :portal_id
2410
+ # The ID of the web portal for the session.
2411
+ #
2412
+ # @option params [required, String] :session_id
2413
+ # The ID of the session.
2414
+ #
2415
+ # @return [Types::GetSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2416
+ #
2417
+ # * {Types::GetSessionResponse#session #session} => Types::Session
2418
+ #
2419
+ # @example Request syntax with placeholder values
2420
+ #
2421
+ # resp = client.get_session({
2422
+ # portal_id: "PortalId", # required
2423
+ # session_id: "SessionId", # required
2424
+ # })
2425
+ #
2426
+ # @example Response structure
2427
+ #
2428
+ # resp.session.portal_arn #=> String
2429
+ # resp.session.session_id #=> String
2430
+ # resp.session.username #=> String
2431
+ # resp.session.client_ip_addresses #=> Array
2432
+ # resp.session.client_ip_addresses[0] #=> String
2433
+ # resp.session.status #=> String, one of "Active", "Terminated"
2434
+ # resp.session.start_time #=> Time
2435
+ # resp.session.end_time #=> Time
2436
+ #
2437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetSession AWS API Documentation
2438
+ #
2439
+ # @overload get_session(params = {})
2440
+ # @param [Hash] params ({})
2441
+ def get_session(params = {}, options = {})
2442
+ req = build_request(:get_session, params)
2443
+ req.send_request(options)
2444
+ end
2445
+
2446
+ # Gets details about a specific session logger resource.
2447
+ #
2448
+ # @option params [required, String] :session_logger_arn
2449
+ # The ARN of the session logger.
2450
+ #
2451
+ # @return [Types::GetSessionLoggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2452
+ #
2453
+ # * {Types::GetSessionLoggerResponse#session_logger #session_logger} => Types::SessionLogger
2454
+ #
2455
+ #
2456
+ # @example Example: Get Session Logger with All Events
2457
+ #
2458
+ # # Retrieves a session logger configured for all events
2139
2459
  #
2140
- # @option params [required, String] :session_id
2141
- # The ID of the session.
2460
+ # resp = client.get_session_logger({
2461
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
2462
+ # })
2142
2463
  #
2143
- # @return [Types::GetSessionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2464
+ # resp.to_h outputs the following:
2465
+ # {
2466
+ # session_logger: {
2467
+ # associated_portal_arns: [
2468
+ # "arn:aws:workspaces-web:us-west-2:123456789012:portal/87654321-4321-4321-4321-210987654321",
2469
+ # ],
2470
+ # creation_date: Time.parse("2024-01-15T10:30:00Z"),
2471
+ # display_name: "Session Logger with All Events",
2472
+ # event_filter: {
2473
+ # all: {
2474
+ # },
2475
+ # },
2476
+ # log_configuration: {
2477
+ # s3: {
2478
+ # bucket: "my-session-logs-bucket-1",
2479
+ # bucket_owner: "123456789012",
2480
+ # folder_structure: "Flat",
2481
+ # key_prefix: "session-logs/all/events",
2482
+ # log_file_format: "Json",
2483
+ # },
2484
+ # },
2485
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
2486
+ # },
2487
+ # }
2488
+ #
2489
+ # @example Example: Get Session Logger with Specific Events
2490
+ #
2491
+ # # Retrieves a session logger configured for specific events
2492
+ #
2493
+ # resp = client.get_session_logger({
2494
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/87654321-4321-4321-4321-210987654321",
2495
+ # })
2144
2496
  #
2145
- # * {Types::GetSessionResponse#session #session} => Types::Session
2497
+ # resp.to_h outputs the following:
2498
+ # {
2499
+ # session_logger: {
2500
+ # additional_encryption_context: {
2501
+ # "EncryptionContextKey" => "EncryptionContextValue",
2502
+ # },
2503
+ # creation_date: Time.parse("2024-01-15T14:45:00Z"),
2504
+ # customer_managed_key: "arn:aws:kms:us-west-2:123456789012:key/12345678-1234-1234-1234-123456789012",
2505
+ # display_name: "Session Logger with Each Events",
2506
+ # event_filter: {
2507
+ # include: [
2508
+ # "SessionStart",
2509
+ # "SessionEnd",
2510
+ # "UrlLoad",
2511
+ # "WebsiteInteract",
2512
+ # ],
2513
+ # },
2514
+ # log_configuration: {
2515
+ # s3: {
2516
+ # bucket: "my-session-logs-bucket-2",
2517
+ # bucket_owner: "123456789012",
2518
+ # folder_structure: "NestedByDate",
2519
+ # key_prefix: "session-logs/each/event",
2520
+ # log_file_format: "JSONLines",
2521
+ # },
2522
+ # },
2523
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/87654321-4321-4321-4321-210987654321",
2524
+ # },
2525
+ # }
2146
2526
  #
2147
2527
  # @example Request syntax with placeholder values
2148
2528
  #
2149
- # resp = client.get_session({
2150
- # portal_id: "PortalId", # required
2151
- # session_id: "SessionId", # required
2529
+ # resp = client.get_session_logger({
2530
+ # session_logger_arn: "ARN", # required
2152
2531
  # })
2153
2532
  #
2154
2533
  # @example Response structure
2155
2534
  #
2156
- # resp.session.client_ip_addresses #=> Array
2157
- # resp.session.client_ip_addresses[0] #=> String
2158
- # resp.session.end_time #=> Time
2159
- # resp.session.portal_arn #=> String
2160
- # resp.session.session_id #=> String
2161
- # resp.session.start_time #=> Time
2162
- # resp.session.status #=> String, one of "Active", "Terminated"
2163
- # resp.session.username #=> String
2164
- #
2165
- # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetSession AWS API Documentation
2166
- #
2167
- # @overload get_session(params = {})
2535
+ # resp.session_logger.session_logger_arn #=> String
2536
+ # resp.session_logger.event_filter.include #=> Array
2537
+ # resp.session_logger.event_filter.include[0] #=> String, one of "WebsiteInteract", "FileDownloadFromSecureBrowserToRemoteDisk", "FileTransferFromRemoteToLocalDisk", "FileTransferFromLocalToRemoteDisk", "FileUploadFromRemoteDiskToSecureBrowser", "ContentPasteToWebsite", "ContentTransferFromLocalToRemoteClipboard", "ContentCopyFromWebsite", "UrlLoad", "TabOpen", "TabClose", "PrintJobSubmit", "SessionConnect", "SessionStart", "SessionDisconnect", "SessionEnd"
2538
+ # resp.session_logger.log_configuration.s3.bucket #=> String
2539
+ # resp.session_logger.log_configuration.s3.key_prefix #=> String
2540
+ # resp.session_logger.log_configuration.s3.bucket_owner #=> String
2541
+ # resp.session_logger.log_configuration.s3.log_file_format #=> String, one of "JSONLines", "Json"
2542
+ # resp.session_logger.log_configuration.s3.folder_structure #=> String, one of "Flat", "NestedByDate"
2543
+ # resp.session_logger.customer_managed_key #=> String
2544
+ # resp.session_logger.additional_encryption_context #=> Hash
2545
+ # resp.session_logger.additional_encryption_context["StringType"] #=> String
2546
+ # resp.session_logger.associated_portal_arns #=> Array
2547
+ # resp.session_logger.associated_portal_arns[0] #=> String
2548
+ # resp.session_logger.display_name #=> String
2549
+ # resp.session_logger.creation_date #=> Time
2550
+ #
2551
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetSessionLogger AWS API Documentation
2552
+ #
2553
+ # @overload get_session_logger(params = {})
2168
2554
  # @param [Hash] params ({})
2169
- def get_session(params = {}, options = {})
2170
- req = build_request(:get_session, params)
2555
+ def get_session_logger(params = {}, options = {})
2556
+ req = build_request(:get_session_logger, params)
2171
2557
  req.send_request(options)
2172
2558
  end
2173
2559
 
@@ -2203,33 +2589,33 @@ module Aws::WorkSpacesWeb
2203
2589
 
2204
2590
  # Gets the trust store certificate.
2205
2591
  #
2206
- # @option params [required, String] :thumbprint
2207
- # The thumbprint of the trust store certificate.
2208
- #
2209
2592
  # @option params [required, String] :trust_store_arn
2210
2593
  # The ARN of the trust store certificate.
2211
2594
  #
2595
+ # @option params [required, String] :thumbprint
2596
+ # The thumbprint of the trust store certificate.
2597
+ #
2212
2598
  # @return [Types::GetTrustStoreCertificateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2213
2599
  #
2214
- # * {Types::GetTrustStoreCertificateResponse#certificate #certificate} => Types::Certificate
2215
2600
  # * {Types::GetTrustStoreCertificateResponse#trust_store_arn #trust_store_arn} => String
2601
+ # * {Types::GetTrustStoreCertificateResponse#certificate #certificate} => Types::Certificate
2216
2602
  #
2217
2603
  # @example Request syntax with placeholder values
2218
2604
  #
2219
2605
  # resp = client.get_trust_store_certificate({
2220
- # thumbprint: "CertificateThumbprint", # required
2221
2606
  # trust_store_arn: "ARN", # required
2607
+ # thumbprint: "CertificateThumbprint", # required
2222
2608
  # })
2223
2609
  #
2224
2610
  # @example Response structure
2225
2611
  #
2226
- # resp.certificate.body #=> String
2612
+ # resp.trust_store_arn #=> String
2613
+ # resp.certificate.thumbprint #=> String
2614
+ # resp.certificate.subject #=> String
2227
2615
  # resp.certificate.issuer #=> String
2228
- # resp.certificate.not_valid_after #=> Time
2229
2616
  # resp.certificate.not_valid_before #=> Time
2230
- # resp.certificate.subject #=> String
2231
- # resp.certificate.thumbprint #=> String
2232
- # resp.trust_store_arn #=> String
2617
+ # resp.certificate.not_valid_after #=> Time
2618
+ # resp.certificate.body #=> String
2233
2619
  #
2234
2620
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetTrustStoreCertificate AWS API Documentation
2235
2621
  #
@@ -2257,10 +2643,10 @@ module Aws::WorkSpacesWeb
2257
2643
  #
2258
2644
  # @example Response structure
2259
2645
  #
2646
+ # resp.user_access_logging_settings.user_access_logging_settings_arn #=> String
2260
2647
  # resp.user_access_logging_settings.associated_portal_arns #=> Array
2261
2648
  # resp.user_access_logging_settings.associated_portal_arns[0] #=> String
2262
2649
  # resp.user_access_logging_settings.kinesis_stream_arn #=> String
2263
- # resp.user_access_logging_settings.user_access_logging_settings_arn #=> String
2264
2650
  #
2265
2651
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetUserAccessLoggingSettings AWS API Documentation
2266
2652
  #
@@ -2288,10 +2674,16 @@ module Aws::WorkSpacesWeb
2288
2674
  #
2289
2675
  # @example Response structure
2290
2676
  #
2291
- # resp.user_settings.additional_encryption_context #=> Hash
2292
- # resp.user_settings.additional_encryption_context["StringType"] #=> String
2677
+ # resp.user_settings.user_settings_arn #=> String
2293
2678
  # resp.user_settings.associated_portal_arns #=> Array
2294
2679
  # resp.user_settings.associated_portal_arns[0] #=> String
2680
+ # resp.user_settings.copy_allowed #=> String, one of "Disabled", "Enabled"
2681
+ # resp.user_settings.paste_allowed #=> String, one of "Disabled", "Enabled"
2682
+ # resp.user_settings.download_allowed #=> String, one of "Disabled", "Enabled"
2683
+ # resp.user_settings.upload_allowed #=> String, one of "Disabled", "Enabled"
2684
+ # resp.user_settings.print_allowed #=> String, one of "Disabled", "Enabled"
2685
+ # resp.user_settings.disconnect_timeout_in_minutes #=> Integer
2686
+ # resp.user_settings.idle_disconnect_timeout_in_minutes #=> Integer
2295
2687
  # resp.user_settings.cookie_synchronization_configuration.allowlist #=> Array
2296
2688
  # resp.user_settings.cookie_synchronization_configuration.allowlist[0].domain #=> String
2297
2689
  # resp.user_settings.cookie_synchronization_configuration.allowlist[0].name #=> String
@@ -2300,21 +2692,15 @@ module Aws::WorkSpacesWeb
2300
2692
  # resp.user_settings.cookie_synchronization_configuration.blocklist[0].domain #=> String
2301
2693
  # resp.user_settings.cookie_synchronization_configuration.blocklist[0].name #=> String
2302
2694
  # resp.user_settings.cookie_synchronization_configuration.blocklist[0].path #=> String
2303
- # resp.user_settings.copy_allowed #=> String, one of "Disabled", "Enabled"
2304
2695
  # resp.user_settings.customer_managed_key #=> String
2696
+ # resp.user_settings.additional_encryption_context #=> Hash
2697
+ # resp.user_settings.additional_encryption_context["StringType"] #=> String
2305
2698
  # resp.user_settings.deep_link_allowed #=> String, one of "Disabled", "Enabled"
2306
- # resp.user_settings.disconnect_timeout_in_minutes #=> Integer
2307
- # resp.user_settings.download_allowed #=> String, one of "Disabled", "Enabled"
2308
- # resp.user_settings.idle_disconnect_timeout_in_minutes #=> Integer
2309
- # resp.user_settings.paste_allowed #=> String, one of "Disabled", "Enabled"
2310
- # resp.user_settings.print_allowed #=> String, one of "Disabled", "Enabled"
2699
+ # resp.user_settings.toolbar_configuration.toolbar_type #=> String, one of "Floating", "Docked"
2700
+ # resp.user_settings.toolbar_configuration.visual_mode #=> String, one of "Dark", "Light"
2311
2701
  # resp.user_settings.toolbar_configuration.hidden_toolbar_items #=> Array
2312
2702
  # resp.user_settings.toolbar_configuration.hidden_toolbar_items[0] #=> String, one of "Windows", "DualMonitor", "FullScreen", "Webcam", "Microphone"
2313
2703
  # resp.user_settings.toolbar_configuration.max_display_resolution #=> String, one of "size4096X2160", "size3840X2160", "size3440X1440", "size2560X1440", "size1920X1080", "size1280X720", "size1024X768", "size800X600"
2314
- # resp.user_settings.toolbar_configuration.toolbar_type #=> String, one of "Floating", "Docked"
2315
- # resp.user_settings.toolbar_configuration.visual_mode #=> String, one of "Dark", "Light"
2316
- # resp.user_settings.upload_allowed #=> String, one of "Disabled", "Enabled"
2317
- # resp.user_settings.user_settings_arn #=> String
2318
2704
  #
2319
2705
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/GetUserSettings AWS API Documentation
2320
2706
  #
@@ -2327,13 +2713,13 @@ module Aws::WorkSpacesWeb
2327
2713
 
2328
2714
  # Retrieves a list of browser settings.
2329
2715
  #
2330
- # @option params [Integer] :max_results
2331
- # The maximum number of results to be included in the next page.
2332
- #
2333
2716
  # @option params [String] :next_token
2334
2717
  # The pagination token used to retrieve the next page of results for
2335
2718
  # this operation.
2336
2719
  #
2720
+ # @option params [Integer] :max_results
2721
+ # The maximum number of results to be included in the next page.
2722
+ #
2337
2723
  # @return [Types::ListBrowserSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2338
2724
  #
2339
2725
  # * {Types::ListBrowserSettingsResponse#browser_settings #browser_settings} => Array&lt;Types::BrowserSettingsSummary&gt;
@@ -2344,8 +2730,8 @@ module Aws::WorkSpacesWeb
2344
2730
  # @example Request syntax with placeholder values
2345
2731
  #
2346
2732
  # resp = client.list_browser_settings({
2347
- # max_results: 1,
2348
2733
  # next_token: "PaginationToken",
2734
+ # max_results: 1,
2349
2735
  # })
2350
2736
  #
2351
2737
  # @example Response structure
@@ -2365,13 +2751,13 @@ module Aws::WorkSpacesWeb
2365
2751
 
2366
2752
  # Retrieves a list of data protection settings.
2367
2753
  #
2368
- # @option params [Integer] :max_results
2369
- # The maximum number of results to be included in the next page.
2370
- #
2371
2754
  # @option params [String] :next_token
2372
2755
  # The pagination token used to retrieve the next page of results for
2373
2756
  # this operation.
2374
2757
  #
2758
+ # @option params [Integer] :max_results
2759
+ # The maximum number of results to be included in the next page.
2760
+ #
2375
2761
  # @return [Types::ListDataProtectionSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2376
2762
  #
2377
2763
  # * {Types::ListDataProtectionSettingsResponse#data_protection_settings #data_protection_settings} => Array&lt;Types::DataProtectionSettingsSummary&gt;
@@ -2382,17 +2768,17 @@ module Aws::WorkSpacesWeb
2382
2768
  # @example Request syntax with placeholder values
2383
2769
  #
2384
2770
  # resp = client.list_data_protection_settings({
2385
- # max_results: 1,
2386
2771
  # next_token: "PaginationToken",
2772
+ # max_results: 1,
2387
2773
  # })
2388
2774
  #
2389
2775
  # @example Response structure
2390
2776
  #
2391
2777
  # resp.data_protection_settings #=> Array
2392
- # resp.data_protection_settings[0].creation_date #=> Time
2393
2778
  # resp.data_protection_settings[0].data_protection_settings_arn #=> String
2394
- # resp.data_protection_settings[0].description #=> String
2395
2779
  # resp.data_protection_settings[0].display_name #=> String
2780
+ # resp.data_protection_settings[0].description #=> String
2781
+ # resp.data_protection_settings[0].creation_date #=> Time
2396
2782
  # resp.next_token #=> String
2397
2783
  #
2398
2784
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListDataProtectionSettings AWS API Documentation
@@ -2406,38 +2792,38 @@ module Aws::WorkSpacesWeb
2406
2792
 
2407
2793
  # Retrieves a list of identity providers for a specific web portal.
2408
2794
  #
2409
- # @option params [Integer] :max_results
2410
- # The maximum number of results to be included in the next page.
2411
- #
2412
2795
  # @option params [String] :next_token
2413
2796
  # The pagination token used to retrieve the next page of results for
2414
2797
  # this operation.
2415
2798
  #
2799
+ # @option params [Integer] :max_results
2800
+ # The maximum number of results to be included in the next page.
2801
+ #
2416
2802
  # @option params [required, String] :portal_arn
2417
2803
  # The ARN of the web portal.
2418
2804
  #
2419
2805
  # @return [Types::ListIdentityProvidersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2420
2806
  #
2421
- # * {Types::ListIdentityProvidersResponse#identity_providers #identity_providers} => Array&lt;Types::IdentityProviderSummary&gt;
2422
2807
  # * {Types::ListIdentityProvidersResponse#next_token #next_token} => String
2808
+ # * {Types::ListIdentityProvidersResponse#identity_providers #identity_providers} => Array&lt;Types::IdentityProviderSummary&gt;
2423
2809
  #
2424
2810
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2425
2811
  #
2426
2812
  # @example Request syntax with placeholder values
2427
2813
  #
2428
2814
  # resp = client.list_identity_providers({
2429
- # max_results: 1,
2430
2815
  # next_token: "PaginationToken",
2816
+ # max_results: 1,
2431
2817
  # portal_arn: "ARN", # required
2432
2818
  # })
2433
2819
  #
2434
2820
  # @example Response structure
2435
2821
  #
2822
+ # resp.next_token #=> String
2436
2823
  # resp.identity_providers #=> Array
2437
2824
  # resp.identity_providers[0].identity_provider_arn #=> String
2438
2825
  # resp.identity_providers[0].identity_provider_name #=> String
2439
2826
  # resp.identity_providers[0].identity_provider_type #=> String, one of "SAML", "Facebook", "Google", "LoginWithAmazon", "SignInWithApple", "OIDC"
2440
- # resp.next_token #=> String
2441
2827
  #
2442
2828
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListIdentityProviders AWS API Documentation
2443
2829
  #
@@ -2450,13 +2836,13 @@ module Aws::WorkSpacesWeb
2450
2836
 
2451
2837
  # Retrieves a list of IP access settings.
2452
2838
  #
2453
- # @option params [Integer] :max_results
2454
- # The maximum number of results to be included in the next page.
2455
- #
2456
2839
  # @option params [String] :next_token
2457
2840
  # The pagination token used to retrieve the next page of results for
2458
2841
  # this operation.
2459
2842
  #
2843
+ # @option params [Integer] :max_results
2844
+ # The maximum number of results to be included in the next page.
2845
+ #
2460
2846
  # @return [Types::ListIpAccessSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2461
2847
  #
2462
2848
  # * {Types::ListIpAccessSettingsResponse#ip_access_settings #ip_access_settings} => Array&lt;Types::IpAccessSettingsSummary&gt;
@@ -2467,17 +2853,17 @@ module Aws::WorkSpacesWeb
2467
2853
  # @example Request syntax with placeholder values
2468
2854
  #
2469
2855
  # resp = client.list_ip_access_settings({
2470
- # max_results: 1,
2471
2856
  # next_token: "PaginationToken",
2857
+ # max_results: 1,
2472
2858
  # })
2473
2859
  #
2474
2860
  # @example Response structure
2475
2861
  #
2476
2862
  # resp.ip_access_settings #=> Array
2477
- # resp.ip_access_settings[0].creation_date #=> Time
2478
- # resp.ip_access_settings[0].description #=> String
2479
- # resp.ip_access_settings[0].display_name #=> String
2480
2863
  # resp.ip_access_settings[0].ip_access_settings_arn #=> String
2864
+ # resp.ip_access_settings[0].display_name #=> String
2865
+ # resp.ip_access_settings[0].description #=> String
2866
+ # resp.ip_access_settings[0].creation_date #=> Time
2481
2867
  # resp.next_token #=> String
2482
2868
  #
2483
2869
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListIpAccessSettings AWS API Documentation
@@ -2491,13 +2877,13 @@ module Aws::WorkSpacesWeb
2491
2877
 
2492
2878
  # Retrieves a list of network settings.
2493
2879
  #
2494
- # @option params [Integer] :max_results
2495
- # The maximum number of results to be included in the next page.
2496
- #
2497
2880
  # @option params [String] :next_token
2498
2881
  # The pagination token used to retrieve the next page of results for
2499
2882
  # this operation.
2500
2883
  #
2884
+ # @option params [Integer] :max_results
2885
+ # The maximum number of results to be included in the next page.
2886
+ #
2501
2887
  # @return [Types::ListNetworkSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2502
2888
  #
2503
2889
  # * {Types::ListNetworkSettingsResponse#network_settings #network_settings} => Array&lt;Types::NetworkSettingsSummary&gt;
@@ -2508,8 +2894,8 @@ module Aws::WorkSpacesWeb
2508
2894
  # @example Request syntax with placeholder values
2509
2895
  #
2510
2896
  # resp = client.list_network_settings({
2511
- # max_results: 1,
2512
2897
  # next_token: "PaginationToken",
2898
+ # max_results: 1,
2513
2899
  # })
2514
2900
  #
2515
2901
  # @example Response structure
@@ -2530,48 +2916,49 @@ module Aws::WorkSpacesWeb
2530
2916
 
2531
2917
  # Retrieves a list or web portals.
2532
2918
  #
2533
- # @option params [Integer] :max_results
2534
- # The maximum number of results to be included in the next page.
2535
- #
2536
2919
  # @option params [String] :next_token
2537
2920
  # The pagination token used to retrieve the next page of results for
2538
2921
  # this operation.
2539
2922
  #
2923
+ # @option params [Integer] :max_results
2924
+ # The maximum number of results to be included in the next page.
2925
+ #
2540
2926
  # @return [Types::ListPortalsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2541
2927
  #
2542
- # * {Types::ListPortalsResponse#next_token #next_token} => String
2543
2928
  # * {Types::ListPortalsResponse#portals #portals} => Array&lt;Types::PortalSummary&gt;
2929
+ # * {Types::ListPortalsResponse#next_token #next_token} => String
2544
2930
  #
2545
2931
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2546
2932
  #
2547
2933
  # @example Request syntax with placeholder values
2548
2934
  #
2549
2935
  # resp = client.list_portals({
2550
- # max_results: 1,
2551
2936
  # next_token: "PaginationToken",
2937
+ # max_results: 1,
2552
2938
  # })
2553
2939
  #
2554
2940
  # @example Response structure
2555
2941
  #
2556
- # resp.next_token #=> String
2557
2942
  # resp.portals #=> Array
2558
- # resp.portals[0].authentication_type #=> String, one of "Standard", "IAM_Identity_Center"
2559
- # resp.portals[0].browser_settings_arn #=> String
2943
+ # resp.portals[0].portal_arn #=> String
2944
+ # resp.portals[0].renderer_type #=> String, one of "AppStream"
2560
2945
  # resp.portals[0].browser_type #=> String, one of "Chrome"
2946
+ # resp.portals[0].portal_status #=> String, one of "Incomplete", "Pending", "Active"
2947
+ # resp.portals[0].portal_endpoint #=> String
2948
+ # resp.portals[0].display_name #=> String
2561
2949
  # resp.portals[0].creation_date #=> Time
2950
+ # resp.portals[0].browser_settings_arn #=> String
2562
2951
  # resp.portals[0].data_protection_settings_arn #=> String
2563
- # resp.portals[0].display_name #=> String
2564
- # resp.portals[0].instance_type #=> String, one of "standard.regular", "standard.large", "standard.xlarge"
2565
- # resp.portals[0].ip_access_settings_arn #=> String
2566
- # resp.portals[0].max_concurrent_sessions #=> Integer
2952
+ # resp.portals[0].user_settings_arn #=> String
2567
2953
  # resp.portals[0].network_settings_arn #=> String
2568
- # resp.portals[0].portal_arn #=> String
2569
- # resp.portals[0].portal_endpoint #=> String
2570
- # resp.portals[0].portal_status #=> String, one of "Incomplete", "Pending", "Active"
2571
- # resp.portals[0].renderer_type #=> String, one of "AppStream"
2954
+ # resp.portals[0].session_logger_arn #=> String
2572
2955
  # resp.portals[0].trust_store_arn #=> String
2573
2956
  # resp.portals[0].user_access_logging_settings_arn #=> String
2574
- # resp.portals[0].user_settings_arn #=> String
2957
+ # resp.portals[0].authentication_type #=> String, one of "Standard", "IAM_Identity_Center"
2958
+ # resp.portals[0].ip_access_settings_arn #=> String
2959
+ # resp.portals[0].instance_type #=> String, one of "standard.regular", "standard.large", "standard.xlarge"
2960
+ # resp.portals[0].max_concurrent_sessions #=> Integer
2961
+ # resp.next_token #=> String
2575
2962
  #
2576
2963
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListPortals AWS API Documentation
2577
2964
  #
@@ -2582,19 +2969,132 @@ module Aws::WorkSpacesWeb
2582
2969
  req.send_request(options)
2583
2970
  end
2584
2971
 
2585
- # Lists information for multiple secure browser sessions from a specific
2586
- # portal.
2587
- #
2588
- # @option params [Integer] :max_results
2589
- # The maximum number of results to be included in the next page.
2972
+ # Lists all available session logger resources.
2590
2973
  #
2591
2974
  # @option params [String] :next_token
2592
2975
  # The pagination token used to retrieve the next page of results for
2593
2976
  # this operation.
2594
2977
  #
2978
+ # @option params [Integer] :max_results
2979
+ # The maximum number of results to be included in the next page.
2980
+ #
2981
+ # @return [Types::ListSessionLoggersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2982
+ #
2983
+ # * {Types::ListSessionLoggersResponse#session_loggers #session_loggers} => Array&lt;Types::SessionLoggerSummary&gt;
2984
+ # * {Types::ListSessionLoggersResponse#next_token #next_token} => String
2985
+ #
2986
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2987
+ #
2988
+ #
2989
+ # @example Example: List All Session Loggers
2990
+ #
2991
+ # # Lists all session loggers in the account without pagination
2992
+ #
2993
+ # resp = client.list_session_loggers({
2994
+ # })
2995
+ #
2996
+ # resp.to_h outputs the following:
2997
+ # {
2998
+ # session_loggers: [
2999
+ # {
3000
+ # creation_date: Time.parse("2024-01-15T10:30:00Z"),
3001
+ # display_name: "Session Logger with All Events",
3002
+ # log_configuration: {
3003
+ # s3: {
3004
+ # bucket: "my-session-logs-bucket-1",
3005
+ # bucket_owner: "123456789012",
3006
+ # folder_structure: "Flat",
3007
+ # key_prefix: "session-logs/all/events",
3008
+ # log_file_format: "Json",
3009
+ # },
3010
+ # },
3011
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
3012
+ # },
3013
+ # {
3014
+ # creation_date: Time.parse("2024-01-15T14:45:00Z"),
3015
+ # display_name: "Session Logger with Each Events",
3016
+ # log_configuration: {
3017
+ # s3: {
3018
+ # bucket: "my-session-logs-bucket-2",
3019
+ # bucket_owner: "123456789012",
3020
+ # folder_structure: "NestedByDate",
3021
+ # key_prefix: "session-logs/each/event",
3022
+ # log_file_format: "JSONLines",
3023
+ # },
3024
+ # },
3025
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/87654321-4321-4321-4321-210987654321",
3026
+ # },
3027
+ # ],
3028
+ # }
3029
+ #
3030
+ # @example Example: List Session Loggers with Pagination
3031
+ #
3032
+ # # Lists session loggers with pagination parameters
3033
+ #
3034
+ # resp = client.list_session_loggers({
3035
+ # max_results: 1,
3036
+ # next_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9",
3037
+ # })
3038
+ #
3039
+ # resp.to_h outputs the following:
3040
+ # {
3041
+ # next_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9",
3042
+ # session_loggers: [
3043
+ # {
3044
+ # creation_date: Time.parse("2024-03-15T12:45:00Z"),
3045
+ # display_name: "Session Logger Example with Pagination",
3046
+ # log_configuration: {
3047
+ # s3: {
3048
+ # bucket: "my-session-logs-bucket-3",
3049
+ # bucket_owner: "123456789012",
3050
+ # folder_structure: "Flat",
3051
+ # key_prefix: "session-logs/pagination/example",
3052
+ # log_file_format: "JSONLines",
3053
+ # },
3054
+ # },
3055
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/11111111-1111-1111-1111-111111111111",
3056
+ # },
3057
+ # ],
3058
+ # }
3059
+ #
3060
+ # @example Request syntax with placeholder values
3061
+ #
3062
+ # resp = client.list_session_loggers({
3063
+ # next_token: "PaginationToken",
3064
+ # max_results: 1,
3065
+ # })
3066
+ #
3067
+ # @example Response structure
3068
+ #
3069
+ # resp.session_loggers #=> Array
3070
+ # resp.session_loggers[0].session_logger_arn #=> String
3071
+ # resp.session_loggers[0].log_configuration.s3.bucket #=> String
3072
+ # resp.session_loggers[0].log_configuration.s3.key_prefix #=> String
3073
+ # resp.session_loggers[0].log_configuration.s3.bucket_owner #=> String
3074
+ # resp.session_loggers[0].log_configuration.s3.log_file_format #=> String, one of "JSONLines", "Json"
3075
+ # resp.session_loggers[0].log_configuration.s3.folder_structure #=> String, one of "Flat", "NestedByDate"
3076
+ # resp.session_loggers[0].display_name #=> String
3077
+ # resp.session_loggers[0].creation_date #=> Time
3078
+ # resp.next_token #=> String
3079
+ #
3080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListSessionLoggers AWS API Documentation
3081
+ #
3082
+ # @overload list_session_loggers(params = {})
3083
+ # @param [Hash] params ({})
3084
+ def list_session_loggers(params = {}, options = {})
3085
+ req = build_request(:list_session_loggers, params)
3086
+ req.send_request(options)
3087
+ end
3088
+
3089
+ # Lists information for multiple secure browser sessions from a specific
3090
+ # portal.
3091
+ #
2595
3092
  # @option params [required, String] :portal_id
2596
3093
  # The ID of the web portal for the sessions.
2597
3094
  #
3095
+ # @option params [String] :username
3096
+ # The username of the session.
3097
+ #
2598
3098
  # @option params [String] :session_id
2599
3099
  # The ID of the session.
2600
3100
  #
@@ -2604,38 +3104,42 @@ module Aws::WorkSpacesWeb
2604
3104
  # @option params [String] :status
2605
3105
  # The status of the session.
2606
3106
  #
2607
- # @option params [String] :username
2608
- # The username of the session.
3107
+ # @option params [Integer] :max_results
3108
+ # The maximum number of results to be included in the next page.
3109
+ #
3110
+ # @option params [String] :next_token
3111
+ # The pagination token used to retrieve the next page of results for
3112
+ # this operation.
2609
3113
  #
2610
3114
  # @return [Types::ListSessionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2611
3115
  #
2612
- # * {Types::ListSessionsResponse#next_token #next_token} => String
2613
3116
  # * {Types::ListSessionsResponse#sessions #sessions} => Array&lt;Types::SessionSummary&gt;
3117
+ # * {Types::ListSessionsResponse#next_token #next_token} => String
2614
3118
  #
2615
3119
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2616
3120
  #
2617
3121
  # @example Request syntax with placeholder values
2618
3122
  #
2619
3123
  # resp = client.list_sessions({
2620
- # max_results: 1,
2621
- # next_token: "PaginationToken",
2622
3124
  # portal_id: "PortalId", # required
3125
+ # username: "Username",
2623
3126
  # session_id: "SessionId",
2624
3127
  # sort_by: "StartTimeAscending", # accepts StartTimeAscending, StartTimeDescending
2625
3128
  # status: "Active", # accepts Active, Terminated
2626
- # username: "Username",
3129
+ # max_results: 1,
3130
+ # next_token: "PaginationToken",
2627
3131
  # })
2628
3132
  #
2629
3133
  # @example Response structure
2630
3134
  #
2631
- # resp.next_token #=> String
2632
3135
  # resp.sessions #=> Array
2633
- # resp.sessions[0].end_time #=> Time
2634
3136
  # resp.sessions[0].portal_arn #=> String
2635
3137
  # resp.sessions[0].session_id #=> String
2636
- # resp.sessions[0].start_time #=> Time
2637
- # resp.sessions[0].status #=> String, one of "Active", "Terminated"
2638
3138
  # resp.sessions[0].username #=> String
3139
+ # resp.sessions[0].status #=> String, one of "Active", "Terminated"
3140
+ # resp.sessions[0].start_time #=> Time
3141
+ # resp.sessions[0].end_time #=> Time
3142
+ # resp.next_token #=> String
2639
3143
  #
2640
3144
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListSessions AWS API Documentation
2641
3145
  #
@@ -2678,42 +3182,42 @@ module Aws::WorkSpacesWeb
2678
3182
 
2679
3183
  # Retrieves a list of trust store certificates.
2680
3184
  #
2681
- # @option params [Integer] :max_results
2682
- # The maximum number of results to be included in the next page.
3185
+ # @option params [required, String] :trust_store_arn
3186
+ # The ARN of the trust store
2683
3187
  #
2684
3188
  # @option params [String] :next_token
2685
3189
  # The pagination token used to retrieve the next page of results for
2686
3190
  # this operation.
2687
3191
  #
2688
- # @option params [required, String] :trust_store_arn
2689
- # The ARN of the trust store
3192
+ # @option params [Integer] :max_results
3193
+ # The maximum number of results to be included in the next page.
2690
3194
  #
2691
3195
  # @return [Types::ListTrustStoreCertificatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2692
3196
  #
2693
3197
  # * {Types::ListTrustStoreCertificatesResponse#certificate_list #certificate_list} => Array&lt;Types::CertificateSummary&gt;
2694
- # * {Types::ListTrustStoreCertificatesResponse#next_token #next_token} => String
2695
3198
  # * {Types::ListTrustStoreCertificatesResponse#trust_store_arn #trust_store_arn} => String
3199
+ # * {Types::ListTrustStoreCertificatesResponse#next_token #next_token} => String
2696
3200
  #
2697
3201
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2698
3202
  #
2699
3203
  # @example Request syntax with placeholder values
2700
3204
  #
2701
3205
  # resp = client.list_trust_store_certificates({
2702
- # max_results: 1,
2703
- # next_token: "PaginationToken",
2704
3206
  # trust_store_arn: "ARN", # required
3207
+ # next_token: "PaginationToken",
3208
+ # max_results: 1,
2705
3209
  # })
2706
3210
  #
2707
3211
  # @example Response structure
2708
3212
  #
2709
3213
  # resp.certificate_list #=> Array
3214
+ # resp.certificate_list[0].thumbprint #=> String
3215
+ # resp.certificate_list[0].subject #=> String
2710
3216
  # resp.certificate_list[0].issuer #=> String
2711
- # resp.certificate_list[0].not_valid_after #=> Time
2712
3217
  # resp.certificate_list[0].not_valid_before #=> Time
2713
- # resp.certificate_list[0].subject #=> String
2714
- # resp.certificate_list[0].thumbprint #=> String
2715
- # resp.next_token #=> String
3218
+ # resp.certificate_list[0].not_valid_after #=> Time
2716
3219
  # resp.trust_store_arn #=> String
3220
+ # resp.next_token #=> String
2717
3221
  #
2718
3222
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListTrustStoreCertificates AWS API Documentation
2719
3223
  #
@@ -2726,32 +3230,32 @@ module Aws::WorkSpacesWeb
2726
3230
 
2727
3231
  # Retrieves a list of trust stores.
2728
3232
  #
2729
- # @option params [Integer] :max_results
2730
- # The maximum number of results to be included in the next page.
2731
- #
2732
3233
  # @option params [String] :next_token
2733
3234
  # The pagination token used to retrieve the next page of results for
2734
3235
  # this operation.
2735
3236
  #
3237
+ # @option params [Integer] :max_results
3238
+ # The maximum number of results to be included in the next page.
3239
+ #
2736
3240
  # @return [Types::ListTrustStoresResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2737
3241
  #
2738
- # * {Types::ListTrustStoresResponse#next_token #next_token} => String
2739
3242
  # * {Types::ListTrustStoresResponse#trust_stores #trust_stores} => Array&lt;Types::TrustStoreSummary&gt;
3243
+ # * {Types::ListTrustStoresResponse#next_token #next_token} => String
2740
3244
  #
2741
3245
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2742
3246
  #
2743
3247
  # @example Request syntax with placeholder values
2744
3248
  #
2745
3249
  # resp = client.list_trust_stores({
2746
- # max_results: 1,
2747
3250
  # next_token: "PaginationToken",
3251
+ # max_results: 1,
2748
3252
  # })
2749
3253
  #
2750
3254
  # @example Response structure
2751
3255
  #
2752
- # resp.next_token #=> String
2753
3256
  # resp.trust_stores #=> Array
2754
3257
  # resp.trust_stores[0].trust_store_arn #=> String
3258
+ # resp.next_token #=> String
2755
3259
  #
2756
3260
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListTrustStores AWS API Documentation
2757
3261
  #
@@ -2764,33 +3268,33 @@ module Aws::WorkSpacesWeb
2764
3268
 
2765
3269
  # Retrieves a list of user access logging settings.
2766
3270
  #
2767
- # @option params [Integer] :max_results
2768
- # The maximum number of results to be included in the next page.
2769
- #
2770
3271
  # @option params [String] :next_token
2771
3272
  # The pagination token used to retrieve the next page of results for
2772
3273
  # this operation.
2773
3274
  #
3275
+ # @option params [Integer] :max_results
3276
+ # The maximum number of results to be included in the next page.
3277
+ #
2774
3278
  # @return [Types::ListUserAccessLoggingSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2775
3279
  #
2776
- # * {Types::ListUserAccessLoggingSettingsResponse#next_token #next_token} => String
2777
3280
  # * {Types::ListUserAccessLoggingSettingsResponse#user_access_logging_settings #user_access_logging_settings} => Array&lt;Types::UserAccessLoggingSettingsSummary&gt;
3281
+ # * {Types::ListUserAccessLoggingSettingsResponse#next_token #next_token} => String
2778
3282
  #
2779
3283
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2780
3284
  #
2781
3285
  # @example Request syntax with placeholder values
2782
3286
  #
2783
3287
  # resp = client.list_user_access_logging_settings({
2784
- # max_results: 1,
2785
3288
  # next_token: "PaginationToken",
3289
+ # max_results: 1,
2786
3290
  # })
2787
3291
  #
2788
3292
  # @example Response structure
2789
3293
  #
2790
- # resp.next_token #=> String
2791
3294
  # resp.user_access_logging_settings #=> Array
2792
- # resp.user_access_logging_settings[0].kinesis_stream_arn #=> String
2793
3295
  # resp.user_access_logging_settings[0].user_access_logging_settings_arn #=> String
3296
+ # resp.user_access_logging_settings[0].kinesis_stream_arn #=> String
3297
+ # resp.next_token #=> String
2794
3298
  #
2795
3299
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListUserAccessLoggingSettings AWS API Documentation
2796
3300
  #
@@ -2803,31 +3307,38 @@ module Aws::WorkSpacesWeb
2803
3307
 
2804
3308
  # Retrieves a list of user settings.
2805
3309
  #
2806
- # @option params [Integer] :max_results
2807
- # The maximum number of results to be included in the next page.
2808
- #
2809
3310
  # @option params [String] :next_token
2810
3311
  # The pagination token used to retrieve the next page of results for
2811
3312
  # this operation.
2812
3313
  #
3314
+ # @option params [Integer] :max_results
3315
+ # The maximum number of results to be included in the next page.
3316
+ #
2813
3317
  # @return [Types::ListUserSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2814
3318
  #
2815
- # * {Types::ListUserSettingsResponse#next_token #next_token} => String
2816
3319
  # * {Types::ListUserSettingsResponse#user_settings #user_settings} => Array&lt;Types::UserSettingsSummary&gt;
3320
+ # * {Types::ListUserSettingsResponse#next_token #next_token} => String
2817
3321
  #
2818
3322
  # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2819
3323
  #
2820
3324
  # @example Request syntax with placeholder values
2821
3325
  #
2822
3326
  # resp = client.list_user_settings({
2823
- # max_results: 1,
2824
3327
  # next_token: "PaginationToken",
3328
+ # max_results: 1,
2825
3329
  # })
2826
3330
  #
2827
3331
  # @example Response structure
2828
3332
  #
2829
- # resp.next_token #=> String
2830
3333
  # resp.user_settings #=> Array
3334
+ # resp.user_settings[0].user_settings_arn #=> String
3335
+ # resp.user_settings[0].copy_allowed #=> String, one of "Disabled", "Enabled"
3336
+ # resp.user_settings[0].paste_allowed #=> String, one of "Disabled", "Enabled"
3337
+ # resp.user_settings[0].download_allowed #=> String, one of "Disabled", "Enabled"
3338
+ # resp.user_settings[0].upload_allowed #=> String, one of "Disabled", "Enabled"
3339
+ # resp.user_settings[0].print_allowed #=> String, one of "Disabled", "Enabled"
3340
+ # resp.user_settings[0].disconnect_timeout_in_minutes #=> Integer
3341
+ # resp.user_settings[0].idle_disconnect_timeout_in_minutes #=> Integer
2831
3342
  # resp.user_settings[0].cookie_synchronization_configuration.allowlist #=> Array
2832
3343
  # resp.user_settings[0].cookie_synchronization_configuration.allowlist[0].domain #=> String
2833
3344
  # resp.user_settings[0].cookie_synchronization_configuration.allowlist[0].name #=> String
@@ -2836,20 +3347,13 @@ module Aws::WorkSpacesWeb
2836
3347
  # resp.user_settings[0].cookie_synchronization_configuration.blocklist[0].domain #=> String
2837
3348
  # resp.user_settings[0].cookie_synchronization_configuration.blocklist[0].name #=> String
2838
3349
  # resp.user_settings[0].cookie_synchronization_configuration.blocklist[0].path #=> String
2839
- # resp.user_settings[0].copy_allowed #=> String, one of "Disabled", "Enabled"
2840
3350
  # resp.user_settings[0].deep_link_allowed #=> String, one of "Disabled", "Enabled"
2841
- # resp.user_settings[0].disconnect_timeout_in_minutes #=> Integer
2842
- # resp.user_settings[0].download_allowed #=> String, one of "Disabled", "Enabled"
2843
- # resp.user_settings[0].idle_disconnect_timeout_in_minutes #=> Integer
2844
- # resp.user_settings[0].paste_allowed #=> String, one of "Disabled", "Enabled"
2845
- # resp.user_settings[0].print_allowed #=> String, one of "Disabled", "Enabled"
3351
+ # resp.user_settings[0].toolbar_configuration.toolbar_type #=> String, one of "Floating", "Docked"
3352
+ # resp.user_settings[0].toolbar_configuration.visual_mode #=> String, one of "Dark", "Light"
2846
3353
  # resp.user_settings[0].toolbar_configuration.hidden_toolbar_items #=> Array
2847
3354
  # resp.user_settings[0].toolbar_configuration.hidden_toolbar_items[0] #=> String, one of "Windows", "DualMonitor", "FullScreen", "Webcam", "Microphone"
2848
3355
  # resp.user_settings[0].toolbar_configuration.max_display_resolution #=> String, one of "size4096X2160", "size3840X2160", "size3440X1440", "size2560X1440", "size1920X1080", "size1280X720", "size1024X768", "size800X600"
2849
- # resp.user_settings[0].toolbar_configuration.toolbar_type #=> String, one of "Floating", "Docked"
2850
- # resp.user_settings[0].toolbar_configuration.visual_mode #=> String, one of "Dark", "Light"
2851
- # resp.user_settings[0].upload_allowed #=> String, one of "Disabled", "Enabled"
2852
- # resp.user_settings[0].user_settings_arn #=> String
3356
+ # resp.next_token #=> String
2853
3357
  #
2854
3358
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/ListUserSettings AWS API Documentation
2855
3359
  #
@@ -2862,6 +3366,12 @@ module Aws::WorkSpacesWeb
2862
3366
 
2863
3367
  # Adds or overwrites one or more tags for the specified resource.
2864
3368
  #
3369
+ # @option params [required, String] :resource_arn
3370
+ # The ARN of the resource.
3371
+ #
3372
+ # @option params [required, Array<Types::Tag>] :tags
3373
+ # The tags of the resource.
3374
+ #
2865
3375
  # @option params [String] :client_token
2866
3376
  # A unique, case-sensitive identifier that you provide to ensure the
2867
3377
  # idempotency of the request. Idempotency ensures that an API request
@@ -2875,18 +3385,11 @@ module Aws::WorkSpacesWeb
2875
3385
  # **A suitable default value is auto-generated.** You should normally
2876
3386
  # not need to pass this option.**
2877
3387
  #
2878
- # @option params [required, String] :resource_arn
2879
- # The ARN of the resource.
2880
- #
2881
- # @option params [required, Array<Types::Tag>] :tags
2882
- # The tags of the resource.
2883
- #
2884
3388
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2885
3389
  #
2886
3390
  # @example Request syntax with placeholder values
2887
3391
  #
2888
3392
  # resp = client.tag_resource({
2889
- # client_token: "ClientToken",
2890
3393
  # resource_arn: "ARN", # required
2891
3394
  # tags: [ # required
2892
3395
  # {
@@ -2894,6 +3397,7 @@ module Aws::WorkSpacesWeb
2894
3397
  # value: "TagValue", # required
2895
3398
  # },
2896
3399
  # ],
3400
+ # client_token: "ClientToken",
2897
3401
  # })
2898
3402
  #
2899
3403
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/TagResource AWS API Documentation
@@ -2933,13 +3437,13 @@ module Aws::WorkSpacesWeb
2933
3437
 
2934
3438
  # Updates browser settings.
2935
3439
  #
3440
+ # @option params [required, String] :browser_settings_arn
3441
+ # The ARN of the browser settings.
3442
+ #
2936
3443
  # @option params [String] :browser_policy
2937
3444
  # A JSON string containing Chrome Enterprise policies that will be
2938
3445
  # applied to all streaming sessions.
2939
3446
  #
2940
- # @option params [required, String] :browser_settings_arn
2941
- # The ARN of the browser settings.
2942
- #
2943
3447
  # @option params [String] :client_token
2944
3448
  # A unique, case-sensitive identifier that you provide to ensure the
2945
3449
  # idempotency of the request. Idempotency ensures that an API request
@@ -2960,20 +3464,20 @@ module Aws::WorkSpacesWeb
2960
3464
  # @example Request syntax with placeholder values
2961
3465
  #
2962
3466
  # resp = client.update_browser_settings({
2963
- # browser_policy: "BrowserPolicy",
2964
3467
  # browser_settings_arn: "ARN", # required
3468
+ # browser_policy: "BrowserPolicy",
2965
3469
  # client_token: "ClientToken",
2966
3470
  # })
2967
3471
  #
2968
3472
  # @example Response structure
2969
3473
  #
2970
- # resp.browser_settings.additional_encryption_context #=> Hash
2971
- # resp.browser_settings.additional_encryption_context["StringType"] #=> String
3474
+ # resp.browser_settings.browser_settings_arn #=> String
2972
3475
  # resp.browser_settings.associated_portal_arns #=> Array
2973
3476
  # resp.browser_settings.associated_portal_arns[0] #=> String
2974
3477
  # resp.browser_settings.browser_policy #=> String
2975
- # resp.browser_settings.browser_settings_arn #=> String
2976
3478
  # resp.browser_settings.customer_managed_key #=> String
3479
+ # resp.browser_settings.additional_encryption_context #=> Hash
3480
+ # resp.browser_settings.additional_encryption_context["StringType"] #=> String
2977
3481
  #
2978
3482
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateBrowserSettings AWS API Documentation
2979
3483
  #
@@ -2986,6 +3490,19 @@ module Aws::WorkSpacesWeb
2986
3490
 
2987
3491
  # Updates data protection settings.
2988
3492
  #
3493
+ # @option params [required, String] :data_protection_settings_arn
3494
+ # The ARN of the data protection settings.
3495
+ #
3496
+ # @option params [Types::InlineRedactionConfiguration] :inline_redaction_configuration
3497
+ # The inline redaction configuration of the data protection settings
3498
+ # that will be applied to all sessions.
3499
+ #
3500
+ # @option params [String] :display_name
3501
+ # The display name of the data protection settings.
3502
+ #
3503
+ # @option params [String] :description
3504
+ # The description of the data protection settings.
3505
+ #
2989
3506
  # @option params [String] :client_token
2990
3507
  # A unique, case-sensitive identifier that you provide to ensure the
2991
3508
  # idempotency of the request. Idempotency ensures that an API request
@@ -2999,19 +3516,6 @@ module Aws::WorkSpacesWeb
2999
3516
  # **A suitable default value is auto-generated.** You should normally
3000
3517
  # not need to pass this option.**
3001
3518
  #
3002
- # @option params [required, String] :data_protection_settings_arn
3003
- # The ARN of the data protection settings.
3004
- #
3005
- # @option params [String] :description
3006
- # The description of the data protection settings.
3007
- #
3008
- # @option params [String] :display_name
3009
- # The display name of the data protection settings.
3010
- #
3011
- # @option params [Types::InlineRedactionConfiguration] :inline_redaction_configuration
3012
- # The inline redaction configuration of the data protection settings
3013
- # that will be applied to all sessions.
3014
- #
3015
3519
  # @return [Types::UpdateDataProtectionSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3016
3520
  #
3017
3521
  # * {Types::UpdateDataProtectionSettingsResponse#data_protection_settings #data_protection_settings} => Types::DataProtectionSettings
@@ -3019,64 +3523,64 @@ module Aws::WorkSpacesWeb
3019
3523
  # @example Request syntax with placeholder values
3020
3524
  #
3021
3525
  # resp = client.update_data_protection_settings({
3022
- # client_token: "ClientToken",
3023
3526
  # data_protection_settings_arn: "ARN", # required
3024
- # description: "DescriptionSafe",
3025
- # display_name: "DisplayNameSafe",
3026
3527
  # inline_redaction_configuration: {
3027
- # global_confidence_level: 1,
3028
- # global_enforced_urls: ["InlineRedactionUrl"],
3029
- # global_exempt_urls: ["InlineRedactionUrl"],
3030
3528
  # inline_redaction_patterns: [ # required
3031
3529
  # {
3032
3530
  # built_in_pattern_id: "BuiltInPatternId",
3033
- # confidence_level: 1,
3034
3531
  # custom_pattern: {
3035
- # keyword_regex: "Regex",
3036
- # pattern_description: "DescriptionSafe",
3037
3532
  # pattern_name: "PatternName", # required
3038
3533
  # pattern_regex: "Regex", # required
3534
+ # pattern_description: "DescriptionSafe",
3535
+ # keyword_regex: "Regex",
3039
3536
  # },
3040
- # enforced_urls: ["InlineRedactionUrl"],
3041
- # exempt_urls: ["InlineRedactionUrl"],
3042
3537
  # redaction_place_holder: { # required
3043
- # redaction_place_holder_text: "RedactionPlaceHolderText",
3044
3538
  # redaction_place_holder_type: "CustomText", # required, accepts CustomText
3539
+ # redaction_place_holder_text: "RedactionPlaceHolderText",
3045
3540
  # },
3541
+ # enforced_urls: ["InlineRedactionUrl"],
3542
+ # exempt_urls: ["InlineRedactionUrl"],
3543
+ # confidence_level: 1,
3046
3544
  # },
3047
3545
  # ],
3546
+ # global_enforced_urls: ["InlineRedactionUrl"],
3547
+ # global_exempt_urls: ["InlineRedactionUrl"],
3548
+ # global_confidence_level: 1,
3048
3549
  # },
3550
+ # display_name: "DisplayNameSafe",
3551
+ # description: "DescriptionSafe",
3552
+ # client_token: "ClientToken",
3049
3553
  # })
3050
3554
  #
3051
3555
  # @example Response structure
3052
3556
  #
3053
- # resp.data_protection_settings.additional_encryption_context #=> Hash
3054
- # resp.data_protection_settings.additional_encryption_context["StringType"] #=> String
3055
- # resp.data_protection_settings.associated_portal_arns #=> Array
3056
- # resp.data_protection_settings.associated_portal_arns[0] #=> String
3057
- # resp.data_protection_settings.creation_date #=> Time
3058
- # resp.data_protection_settings.customer_managed_key #=> String
3059
3557
  # resp.data_protection_settings.data_protection_settings_arn #=> String
3060
- # resp.data_protection_settings.description #=> String
3061
- # resp.data_protection_settings.display_name #=> String
3062
- # resp.data_protection_settings.inline_redaction_configuration.global_confidence_level #=> Integer
3063
- # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls #=> Array
3064
- # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls[0] #=> String
3065
- # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls #=> Array
3066
- # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls[0] #=> String
3067
3558
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns #=> Array
3068
3559
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].built_in_pattern_id #=> String
3069
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].confidence_level #=> Integer
3070
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.keyword_regex #=> String
3071
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_description #=> String
3072
3560
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_name #=> String
3073
3561
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_regex #=> String
3562
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.pattern_description #=> String
3563
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].custom_pattern.keyword_regex #=> String
3564
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_type #=> String, one of "CustomText"
3565
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_text #=> String
3074
3566
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].enforced_urls #=> Array
3075
3567
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].enforced_urls[0] #=> String
3076
3568
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].exempt_urls #=> Array
3077
3569
  # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].exempt_urls[0] #=> String
3078
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_text #=> String
3079
- # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].redaction_place_holder.redaction_place_holder_type #=> String, one of "CustomText"
3570
+ # resp.data_protection_settings.inline_redaction_configuration.inline_redaction_patterns[0].confidence_level #=> Integer
3571
+ # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls #=> Array
3572
+ # resp.data_protection_settings.inline_redaction_configuration.global_enforced_urls[0] #=> String
3573
+ # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls #=> Array
3574
+ # resp.data_protection_settings.inline_redaction_configuration.global_exempt_urls[0] #=> String
3575
+ # resp.data_protection_settings.inline_redaction_configuration.global_confidence_level #=> Integer
3576
+ # resp.data_protection_settings.associated_portal_arns #=> Array
3577
+ # resp.data_protection_settings.associated_portal_arns[0] #=> String
3578
+ # resp.data_protection_settings.display_name #=> String
3579
+ # resp.data_protection_settings.description #=> String
3580
+ # resp.data_protection_settings.creation_date #=> Time
3581
+ # resp.data_protection_settings.customer_managed_key #=> String
3582
+ # resp.data_protection_settings.additional_encryption_context #=> Hash
3583
+ # resp.data_protection_settings.additional_encryption_context["StringType"] #=> String
3080
3584
  #
3081
3585
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateDataProtectionSettings AWS API Documentation
3082
3586
  #
@@ -3089,22 +3593,15 @@ module Aws::WorkSpacesWeb
3089
3593
 
3090
3594
  # Updates the identity provider.
3091
3595
  #
3092
- # @option params [String] :client_token
3093
- # A unique, case-sensitive identifier that you provide to ensure the
3094
- # idempotency of the request. Idempotency ensures that an API request
3095
- # completes only once. With an idempotent request, if the original
3096
- # request completes successfully, subsequent retries with the same
3097
- # client token return the result from the original successful request.
3098
- #
3099
- # If you do not specify a client token, one is automatically generated
3100
- # by the Amazon Web Services SDK.
3101
- #
3102
- # **A suitable default value is auto-generated.** You should normally
3103
- # not need to pass this option.**
3104
- #
3105
3596
  # @option params [required, String] :identity_provider_arn
3106
3597
  # The ARN of the identity provider.
3107
3598
  #
3599
+ # @option params [String] :identity_provider_name
3600
+ # The name of the identity provider.
3601
+ #
3602
+ # @option params [String] :identity_provider_type
3603
+ # The type of the identity provider.
3604
+ #
3108
3605
  # @option params [Hash<String,String>] :identity_provider_details
3109
3606
  # The details of the identity provider. The following list describes the
3110
3607
  # provider detail keys for each identity provider type.
@@ -3172,11 +3669,18 @@ module Aws::WorkSpacesWeb
3172
3669
  #
3173
3670
  # * `EncryptedResponses` (boolean) *optional*
3174
3671
  #
3175
- # @option params [String] :identity_provider_name
3176
- # The name of the identity provider.
3672
+ # @option params [String] :client_token
3673
+ # A unique, case-sensitive identifier that you provide to ensure the
3674
+ # idempotency of the request. Idempotency ensures that an API request
3675
+ # completes only once. With an idempotent request, if the original
3676
+ # request completes successfully, subsequent retries with the same
3677
+ # client token return the result from the original successful request.
3177
3678
  #
3178
- # @option params [String] :identity_provider_type
3179
- # The type of the identity provider.
3679
+ # If you do not specify a client token, one is automatically generated
3680
+ # by the Amazon Web Services SDK.
3681
+ #
3682
+ # **A suitable default value is auto-generated.** You should normally
3683
+ # not need to pass this option.**
3180
3684
  #
3181
3685
  # @return [Types::UpdateIdentityProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3182
3686
  #
@@ -3185,22 +3689,22 @@ module Aws::WorkSpacesWeb
3185
3689
  # @example Request syntax with placeholder values
3186
3690
  #
3187
3691
  # resp = client.update_identity_provider({
3188
- # client_token: "ClientToken",
3189
3692
  # identity_provider_arn: "SubresourceARN", # required
3693
+ # identity_provider_name: "IdentityProviderName",
3694
+ # identity_provider_type: "SAML", # accepts SAML, Facebook, Google, LoginWithAmazon, SignInWithApple, OIDC
3190
3695
  # identity_provider_details: {
3191
3696
  # "StringType" => "StringType",
3192
3697
  # },
3193
- # identity_provider_name: "IdentityProviderName",
3194
- # identity_provider_type: "SAML", # accepts SAML, Facebook, Google, LoginWithAmazon, SignInWithApple, OIDC
3698
+ # client_token: "ClientToken",
3195
3699
  # })
3196
3700
  #
3197
3701
  # @example Response structure
3198
3702
  #
3199
3703
  # resp.identity_provider.identity_provider_arn #=> String
3200
- # resp.identity_provider.identity_provider_details #=> Hash
3201
- # resp.identity_provider.identity_provider_details["StringType"] #=> String
3202
3704
  # resp.identity_provider.identity_provider_name #=> String
3203
3705
  # resp.identity_provider.identity_provider_type #=> String, one of "SAML", "Facebook", "Google", "LoginWithAmazon", "SignInWithApple", "OIDC"
3706
+ # resp.identity_provider.identity_provider_details #=> Hash
3707
+ # resp.identity_provider.identity_provider_details["StringType"] #=> String
3204
3708
  #
3205
3709
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateIdentityProvider AWS API Documentation
3206
3710
  #
@@ -3213,6 +3717,18 @@ module Aws::WorkSpacesWeb
3213
3717
 
3214
3718
  # Updates IP access settings.
3215
3719
  #
3720
+ # @option params [required, String] :ip_access_settings_arn
3721
+ # The ARN of the IP access settings.
3722
+ #
3723
+ # @option params [String] :display_name
3724
+ # The display name of the IP access settings.
3725
+ #
3726
+ # @option params [String] :description
3727
+ # The description of the IP access settings.
3728
+ #
3729
+ # @option params [Array<Types::IpRule>] :ip_rules
3730
+ # The updated IP rules of the IP access settings.
3731
+ #
3216
3732
  # @option params [String] :client_token
3217
3733
  # A unique, case-sensitive identifier that you provide to ensure the
3218
3734
  # idempotency of the request. Idempotency ensures that an API request
@@ -3226,18 +3742,6 @@ module Aws::WorkSpacesWeb
3226
3742
  # **A suitable default value is auto-generated.** You should normally
3227
3743
  # not need to pass this option.**
3228
3744
  #
3229
- # @option params [String] :description
3230
- # The description of the IP access settings.
3231
- #
3232
- # @option params [String] :display_name
3233
- # The display name of the IP access settings.
3234
- #
3235
- # @option params [required, String] :ip_access_settings_arn
3236
- # The ARN of the IP access settings.
3237
- #
3238
- # @option params [Array<Types::IpRule>] :ip_rules
3239
- # The updated IP rules of the IP access settings.
3240
- #
3241
3745
  # @return [Types::UpdateIpAccessSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3242
3746
  #
3243
3747
  # * {Types::UpdateIpAccessSettingsResponse#ip_access_settings #ip_access_settings} => Types::IpAccessSettings
@@ -3245,32 +3749,32 @@ module Aws::WorkSpacesWeb
3245
3749
  # @example Request syntax with placeholder values
3246
3750
  #
3247
3751
  # resp = client.update_ip_access_settings({
3248
- # client_token: "ClientToken",
3249
- # description: "Description",
3250
- # display_name: "DisplayName",
3251
3752
  # ip_access_settings_arn: "ARN", # required
3753
+ # display_name: "DisplayName",
3754
+ # description: "Description",
3252
3755
  # ip_rules: [
3253
3756
  # {
3254
- # description: "Description",
3255
3757
  # ip_range: "IpRange", # required
3758
+ # description: "Description",
3256
3759
  # },
3257
3760
  # ],
3761
+ # client_token: "ClientToken",
3258
3762
  # })
3259
3763
  #
3260
3764
  # @example Response structure
3261
3765
  #
3262
- # resp.ip_access_settings.additional_encryption_context #=> Hash
3263
- # resp.ip_access_settings.additional_encryption_context["StringType"] #=> String
3766
+ # resp.ip_access_settings.ip_access_settings_arn #=> String
3264
3767
  # resp.ip_access_settings.associated_portal_arns #=> Array
3265
3768
  # resp.ip_access_settings.associated_portal_arns[0] #=> String
3266
- # resp.ip_access_settings.creation_date #=> Time
3267
- # resp.ip_access_settings.customer_managed_key #=> String
3268
- # resp.ip_access_settings.description #=> String
3269
- # resp.ip_access_settings.display_name #=> String
3270
- # resp.ip_access_settings.ip_access_settings_arn #=> String
3271
3769
  # resp.ip_access_settings.ip_rules #=> Array
3272
- # resp.ip_access_settings.ip_rules[0].description #=> String
3273
3770
  # resp.ip_access_settings.ip_rules[0].ip_range #=> String
3771
+ # resp.ip_access_settings.ip_rules[0].description #=> String
3772
+ # resp.ip_access_settings.display_name #=> String
3773
+ # resp.ip_access_settings.description #=> String
3774
+ # resp.ip_access_settings.creation_date #=> Time
3775
+ # resp.ip_access_settings.customer_managed_key #=> String
3776
+ # resp.ip_access_settings.additional_encryption_context #=> Hash
3777
+ # resp.ip_access_settings.additional_encryption_context["StringType"] #=> String
3274
3778
  #
3275
3779
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateIpAccessSettings AWS API Documentation
3276
3780
  #
@@ -3283,6 +3787,21 @@ module Aws::WorkSpacesWeb
3283
3787
 
3284
3788
  # Updates network settings.
3285
3789
  #
3790
+ # @option params [required, String] :network_settings_arn
3791
+ # The ARN of the network settings.
3792
+ #
3793
+ # @option params [String] :vpc_id
3794
+ # The VPC that streaming instances will connect to.
3795
+ #
3796
+ # @option params [Array<String>] :subnet_ids
3797
+ # The subnets in which network interfaces are created to connect
3798
+ # streaming instances to your VPC. At least two of these subnets must be
3799
+ # in different availability zones.
3800
+ #
3801
+ # @option params [Array<String>] :security_group_ids
3802
+ # One or more security groups used to control access from streaming
3803
+ # instances to your VPC.
3804
+ #
3286
3805
  # @option params [String] :client_token
3287
3806
  # A unique, case-sensitive identifier that you provide to ensure the
3288
3807
  # idempotency of the request. Idempotency ensures that an API request
@@ -3296,21 +3815,6 @@ module Aws::WorkSpacesWeb
3296
3815
  # **A suitable default value is auto-generated.** You should normally
3297
3816
  # not need to pass this option.**
3298
3817
  #
3299
- # @option params [required, String] :network_settings_arn
3300
- # The ARN of the network settings.
3301
- #
3302
- # @option params [Array<String>] :security_group_ids
3303
- # One or more security groups used to control access from streaming
3304
- # instances to your VPC.
3305
- #
3306
- # @option params [Array<String>] :subnet_ids
3307
- # The subnets in which network interfaces are created to connect
3308
- # streaming instances to your VPC. At least two of these subnets must be
3309
- # in different availability zones.
3310
- #
3311
- # @option params [String] :vpc_id
3312
- # The VPC that streaming instances will connect to.
3313
- #
3314
3818
  # @return [Types::UpdateNetworkSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3315
3819
  #
3316
3820
  # * {Types::UpdateNetworkSettingsResponse#network_settings #network_settings} => Types::NetworkSettings
@@ -3318,23 +3822,23 @@ module Aws::WorkSpacesWeb
3318
3822
  # @example Request syntax with placeholder values
3319
3823
  #
3320
3824
  # resp = client.update_network_settings({
3321
- # client_token: "ClientToken",
3322
3825
  # network_settings_arn: "ARN", # required
3323
- # security_group_ids: ["SecurityGroupId"],
3324
- # subnet_ids: ["SubnetId"],
3325
3826
  # vpc_id: "VpcId",
3827
+ # subnet_ids: ["SubnetId"],
3828
+ # security_group_ids: ["SecurityGroupId"],
3829
+ # client_token: "ClientToken",
3326
3830
  # })
3327
3831
  #
3328
3832
  # @example Response structure
3329
3833
  #
3834
+ # resp.network_settings.network_settings_arn #=> String
3330
3835
  # resp.network_settings.associated_portal_arns #=> Array
3331
3836
  # resp.network_settings.associated_portal_arns[0] #=> String
3332
- # resp.network_settings.network_settings_arn #=> String
3333
- # resp.network_settings.security_group_ids #=> Array
3334
- # resp.network_settings.security_group_ids[0] #=> String
3837
+ # resp.network_settings.vpc_id #=> String
3335
3838
  # resp.network_settings.subnet_ids #=> Array
3336
3839
  # resp.network_settings.subnet_ids[0] #=> String
3337
- # resp.network_settings.vpc_id #=> String
3840
+ # resp.network_settings.security_group_ids #=> Array
3841
+ # resp.network_settings.security_group_ids[0] #=> String
3338
3842
  #
3339
3843
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateNetworkSettings AWS API Documentation
3340
3844
  #
@@ -3347,6 +3851,13 @@ module Aws::WorkSpacesWeb
3347
3851
 
3348
3852
  # Updates a web portal.
3349
3853
  #
3854
+ # @option params [required, String] :portal_arn
3855
+ # The ARN of the web portal.
3856
+ #
3857
+ # @option params [String] :display_name
3858
+ # The name of the web portal. This is not visible to users who log into
3859
+ # the web portal.
3860
+ #
3350
3861
  # @option params [String] :authentication_type
3351
3862
  # The type of authentication integration points used when signing into
3352
3863
  # the web portal. Defaults to `Standard`.
@@ -3362,19 +3873,12 @@ module Aws::WorkSpacesWeb
3362
3873
  # provider integration), plus user and group access to your web portal,
3363
3874
  # can be configured in the IAM Identity Center.
3364
3875
  #
3365
- # @option params [String] :display_name
3366
- # The name of the web portal. This is not visible to users who log into
3367
- # the web portal.
3368
- #
3369
3876
  # @option params [String] :instance_type
3370
3877
  # The type and resources of the underlying instance.
3371
3878
  #
3372
3879
  # @option params [Integer] :max_concurrent_sessions
3373
3880
  # The maximum number of concurrent sessions for the portal.
3374
3881
  #
3375
- # @option params [required, String] :portal_arn
3376
- # The ARN of the web portal.
3377
- #
3378
3882
  # @return [Types::UpdatePortalResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3379
3883
  #
3380
3884
  # * {Types::UpdatePortalResponse#portal #portal} => Types::Portal
@@ -3382,36 +3886,37 @@ module Aws::WorkSpacesWeb
3382
3886
  # @example Request syntax with placeholder values
3383
3887
  #
3384
3888
  # resp = client.update_portal({
3385
- # authentication_type: "Standard", # accepts Standard, IAM_Identity_Center
3889
+ # portal_arn: "ARN", # required
3386
3890
  # display_name: "DisplayName",
3891
+ # authentication_type: "Standard", # accepts Standard, IAM_Identity_Center
3387
3892
  # instance_type: "standard.regular", # accepts standard.regular, standard.large, standard.xlarge
3388
3893
  # max_concurrent_sessions: 1,
3389
- # portal_arn: "ARN", # required
3390
3894
  # })
3391
3895
  #
3392
3896
  # @example Response structure
3393
3897
  #
3394
- # resp.portal.additional_encryption_context #=> Hash
3395
- # resp.portal.additional_encryption_context["StringType"] #=> String
3396
- # resp.portal.authentication_type #=> String, one of "Standard", "IAM_Identity_Center"
3397
- # resp.portal.browser_settings_arn #=> String
3898
+ # resp.portal.portal_arn #=> String
3899
+ # resp.portal.renderer_type #=> String, one of "AppStream"
3398
3900
  # resp.portal.browser_type #=> String, one of "Chrome"
3901
+ # resp.portal.portal_status #=> String, one of "Incomplete", "Pending", "Active"
3902
+ # resp.portal.portal_endpoint #=> String
3903
+ # resp.portal.display_name #=> String
3399
3904
  # resp.portal.creation_date #=> Time
3400
- # resp.portal.customer_managed_key #=> String
3905
+ # resp.portal.browser_settings_arn #=> String
3401
3906
  # resp.portal.data_protection_settings_arn #=> String
3402
- # resp.portal.display_name #=> String
3403
- # resp.portal.instance_type #=> String, one of "standard.regular", "standard.large", "standard.xlarge"
3404
- # resp.portal.ip_access_settings_arn #=> String
3405
- # resp.portal.max_concurrent_sessions #=> Integer
3907
+ # resp.portal.user_settings_arn #=> String
3406
3908
  # resp.portal.network_settings_arn #=> String
3407
- # resp.portal.portal_arn #=> String
3408
- # resp.portal.portal_endpoint #=> String
3409
- # resp.portal.portal_status #=> String, one of "Incomplete", "Pending", "Active"
3410
- # resp.portal.renderer_type #=> String, one of "AppStream"
3411
- # resp.portal.status_reason #=> String
3909
+ # resp.portal.session_logger_arn #=> String
3412
3910
  # resp.portal.trust_store_arn #=> String
3911
+ # resp.portal.status_reason #=> String
3413
3912
  # resp.portal.user_access_logging_settings_arn #=> String
3414
- # resp.portal.user_settings_arn #=> String
3913
+ # resp.portal.authentication_type #=> String, one of "Standard", "IAM_Identity_Center"
3914
+ # resp.portal.ip_access_settings_arn #=> String
3915
+ # resp.portal.customer_managed_key #=> String
3916
+ # resp.portal.additional_encryption_context #=> Hash
3917
+ # resp.portal.additional_encryption_context["StringType"] #=> String
3918
+ # resp.portal.instance_type #=> String, one of "standard.regular", "standard.large", "standard.xlarge"
3919
+ # resp.portal.max_concurrent_sessions #=> Integer
3415
3920
  #
3416
3921
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdatePortal AWS API Documentation
3417
3922
  #
@@ -3422,8 +3927,163 @@ module Aws::WorkSpacesWeb
3422
3927
  req.send_request(options)
3423
3928
  end
3424
3929
 
3930
+ # Updates the details of a session logger.
3931
+ #
3932
+ # @option params [required, String] :session_logger_arn
3933
+ # The ARN of the session logger to update.
3934
+ #
3935
+ # @option params [Types::EventFilter] :event_filter
3936
+ # The updated eventFilter.
3937
+ #
3938
+ # @option params [Types::LogConfiguration] :log_configuration
3939
+ # The updated logConfiguration.
3940
+ #
3941
+ # @option params [String] :display_name
3942
+ # The updated display name.
3943
+ #
3944
+ # @return [Types::UpdateSessionLoggerResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3945
+ #
3946
+ # * {Types::UpdateSessionLoggerResponse#session_logger #session_logger} => Types::SessionLogger
3947
+ #
3948
+ #
3949
+ # @example Example: Update Session Logger Event Filter
3950
+ #
3951
+ # # Updates a session logger to capture specific events instead of all events
3952
+ #
3953
+ # resp = client.update_session_logger({
3954
+ # event_filter: {
3955
+ # include: [
3956
+ # "SessionStart",
3957
+ # "SessionEnd",
3958
+ # "UrlLoad",
3959
+ # "WebsiteInteract",
3960
+ # ],
3961
+ # },
3962
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
3963
+ # })
3964
+ #
3965
+ # resp.to_h outputs the following:
3966
+ # {
3967
+ # session_logger: {
3968
+ # creation_date: Time.parse("2024-01-15T10:30:00Z"),
3969
+ # display_name: "Updated Session Logger with Specific Events",
3970
+ # event_filter: {
3971
+ # include: [
3972
+ # "SessionStart",
3973
+ # "SessionEnd",
3974
+ # "UrlLoad",
3975
+ # "WebsiteInteract",
3976
+ # ],
3977
+ # },
3978
+ # log_configuration: {
3979
+ # s3: {
3980
+ # bucket: "my-session-logs-bucket",
3981
+ # bucket_owner: "123456789012",
3982
+ # folder_structure: "Flat",
3983
+ # key_prefix: "updated/session-logs/each/event",
3984
+ # log_file_format: "Json",
3985
+ # },
3986
+ # },
3987
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/12345678-1234-1234-1234-123456789012",
3988
+ # },
3989
+ # }
3990
+ #
3991
+ # @example Example: Update Session Logger Configuration
3992
+ #
3993
+ # # Updates the log configuration of a session logger
3994
+ #
3995
+ # resp = client.update_session_logger({
3996
+ # log_configuration: {
3997
+ # s3: {
3998
+ # bucket: "updated-my-session-logs-bucket-2",
3999
+ # bucket_owner: "123456789012",
4000
+ # folder_structure: "Flat",
4001
+ # key_prefix: "updated/key/prefix",
4002
+ # log_file_format: "Json",
4003
+ # },
4004
+ # },
4005
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/87654321-4321-4321-4321-210987654321",
4006
+ # })
4007
+ #
4008
+ # resp.to_h outputs the following:
4009
+ # {
4010
+ # session_logger: {
4011
+ # additional_encryption_context: {
4012
+ # "EncryptionContextKey" => "EncryptionContextValue",
4013
+ # },
4014
+ # creation_date: Time.parse("2024-01-15T14:45:00Z"),
4015
+ # customer_managed_key: "arn:aws:kms:us-west-2:123456789012:key/12345678-1234-1234-1234-123456789012",
4016
+ # display_name: "Updated Session Logger with Log Config",
4017
+ # event_filter: {
4018
+ # all: {
4019
+ # },
4020
+ # },
4021
+ # log_configuration: {
4022
+ # s3: {
4023
+ # bucket: "updated-my-session-logs-bucket-2",
4024
+ # bucket_owner: "123456789012",
4025
+ # folder_structure: "Flat",
4026
+ # key_prefix: "updated/key/prefix",
4027
+ # log_file_format: "Json",
4028
+ # },
4029
+ # },
4030
+ # session_logger_arn: "arn:aws:workspaces-web:us-west-2:123456789012:sessionLogger/87654321-4321-4321-4321-210987654321",
4031
+ # },
4032
+ # }
4033
+ #
4034
+ # @example Request syntax with placeholder values
4035
+ #
4036
+ # resp = client.update_session_logger({
4037
+ # session_logger_arn: "ARN", # required
4038
+ # event_filter: {
4039
+ # all: {
4040
+ # },
4041
+ # include: ["WebsiteInteract"], # accepts WebsiteInteract, FileDownloadFromSecureBrowserToRemoteDisk, FileTransferFromRemoteToLocalDisk, FileTransferFromLocalToRemoteDisk, FileUploadFromRemoteDiskToSecureBrowser, ContentPasteToWebsite, ContentTransferFromLocalToRemoteClipboard, ContentCopyFromWebsite, UrlLoad, TabOpen, TabClose, PrintJobSubmit, SessionConnect, SessionStart, SessionDisconnect, SessionEnd
4042
+ # },
4043
+ # log_configuration: {
4044
+ # s3: {
4045
+ # bucket: "S3Bucket", # required
4046
+ # key_prefix: "S3KeyPrefix",
4047
+ # bucket_owner: "S3BucketOwner",
4048
+ # log_file_format: "JSONLines", # required, accepts JSONLines, Json
4049
+ # folder_structure: "Flat", # required, accepts Flat, NestedByDate
4050
+ # },
4051
+ # },
4052
+ # display_name: "DisplayNameSafe",
4053
+ # })
4054
+ #
4055
+ # @example Response structure
4056
+ #
4057
+ # resp.session_logger.session_logger_arn #=> String
4058
+ # resp.session_logger.event_filter.include #=> Array
4059
+ # resp.session_logger.event_filter.include[0] #=> String, one of "WebsiteInteract", "FileDownloadFromSecureBrowserToRemoteDisk", "FileTransferFromRemoteToLocalDisk", "FileTransferFromLocalToRemoteDisk", "FileUploadFromRemoteDiskToSecureBrowser", "ContentPasteToWebsite", "ContentTransferFromLocalToRemoteClipboard", "ContentCopyFromWebsite", "UrlLoad", "TabOpen", "TabClose", "PrintJobSubmit", "SessionConnect", "SessionStart", "SessionDisconnect", "SessionEnd"
4060
+ # resp.session_logger.log_configuration.s3.bucket #=> String
4061
+ # resp.session_logger.log_configuration.s3.key_prefix #=> String
4062
+ # resp.session_logger.log_configuration.s3.bucket_owner #=> String
4063
+ # resp.session_logger.log_configuration.s3.log_file_format #=> String, one of "JSONLines", "Json"
4064
+ # resp.session_logger.log_configuration.s3.folder_structure #=> String, one of "Flat", "NestedByDate"
4065
+ # resp.session_logger.customer_managed_key #=> String
4066
+ # resp.session_logger.additional_encryption_context #=> Hash
4067
+ # resp.session_logger.additional_encryption_context["StringType"] #=> String
4068
+ # resp.session_logger.associated_portal_arns #=> Array
4069
+ # resp.session_logger.associated_portal_arns[0] #=> String
4070
+ # resp.session_logger.display_name #=> String
4071
+ # resp.session_logger.creation_date #=> Time
4072
+ #
4073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateSessionLogger AWS API Documentation
4074
+ #
4075
+ # @overload update_session_logger(params = {})
4076
+ # @param [Hash] params ({})
4077
+ def update_session_logger(params = {}, options = {})
4078
+ req = build_request(:update_session_logger, params)
4079
+ req.send_request(options)
4080
+ end
4081
+
3425
4082
  # Updates the trust store.
3426
4083
  #
4084
+ # @option params [required, String] :trust_store_arn
4085
+ # The ARN of the trust store.
4086
+ #
3427
4087
  # @option params [Array<String, StringIO, File>] :certificates_to_add
3428
4088
  # A list of CA certificates to add to the trust store.
3429
4089
  #
@@ -3443,9 +4103,6 @@ module Aws::WorkSpacesWeb
3443
4103
  # **A suitable default value is auto-generated.** You should normally
3444
4104
  # not need to pass this option.**
3445
4105
  #
3446
- # @option params [required, String] :trust_store_arn
3447
- # The ARN of the trust store.
3448
- #
3449
4106
  # @return [Types::UpdateTrustStoreResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3450
4107
  #
3451
4108
  # * {Types::UpdateTrustStoreResponse#trust_store_arn #trust_store_arn} => String
@@ -3453,10 +4110,10 @@ module Aws::WorkSpacesWeb
3453
4110
  # @example Request syntax with placeholder values
3454
4111
  #
3455
4112
  # resp = client.update_trust_store({
4113
+ # trust_store_arn: "ARN", # required
3456
4114
  # certificates_to_add: ["data"],
3457
4115
  # certificates_to_delete: ["CertificateThumbprint"],
3458
4116
  # client_token: "ClientToken",
3459
- # trust_store_arn: "ARN", # required
3460
4117
  # })
3461
4118
  #
3462
4119
  # @example Response structure
@@ -3474,6 +4131,12 @@ module Aws::WorkSpacesWeb
3474
4131
 
3475
4132
  # Updates the user access logging settings.
3476
4133
  #
4134
+ # @option params [required, String] :user_access_logging_settings_arn
4135
+ # The ARN of the user access logging settings.
4136
+ #
4137
+ # @option params [String] :kinesis_stream_arn
4138
+ # The ARN of the Kinesis stream.
4139
+ #
3477
4140
  # @option params [String] :client_token
3478
4141
  # A unique, case-sensitive identifier that you provide to ensure the
3479
4142
  # idempotency of the request. Idempotency ensures that an API request
@@ -3487,12 +4150,6 @@ module Aws::WorkSpacesWeb
3487
4150
  # **A suitable default value is auto-generated.** You should normally
3488
4151
  # not need to pass this option.**
3489
4152
  #
3490
- # @option params [String] :kinesis_stream_arn
3491
- # The ARN of the Kinesis stream.
3492
- #
3493
- # @option params [required, String] :user_access_logging_settings_arn
3494
- # The ARN of the user access logging settings.
3495
- #
3496
4153
  # @return [Types::UpdateUserAccessLoggingSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3497
4154
  #
3498
4155
  # * {Types::UpdateUserAccessLoggingSettingsResponse#user_access_logging_settings #user_access_logging_settings} => Types::UserAccessLoggingSettings
@@ -3500,17 +4157,17 @@ module Aws::WorkSpacesWeb
3500
4157
  # @example Request syntax with placeholder values
3501
4158
  #
3502
4159
  # resp = client.update_user_access_logging_settings({
3503
- # client_token: "ClientToken",
3504
- # kinesis_stream_arn: "KinesisStreamArn",
3505
4160
  # user_access_logging_settings_arn: "ARN", # required
4161
+ # kinesis_stream_arn: "KinesisStreamArn",
4162
+ # client_token: "ClientToken",
3506
4163
  # })
3507
4164
  #
3508
4165
  # @example Response structure
3509
4166
  #
4167
+ # resp.user_access_logging_settings.user_access_logging_settings_arn #=> String
3510
4168
  # resp.user_access_logging_settings.associated_portal_arns #=> Array
3511
4169
  # resp.user_access_logging_settings.associated_portal_arns[0] #=> String
3512
4170
  # resp.user_access_logging_settings.kinesis_stream_arn #=> String
3513
- # resp.user_access_logging_settings.user_access_logging_settings_arn #=> String
3514
4171
  #
3515
4172
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateUserAccessLoggingSettings AWS API Documentation
3516
4173
  #
@@ -3523,6 +4180,37 @@ module Aws::WorkSpacesWeb
3523
4180
 
3524
4181
  # Updates the user settings.
3525
4182
  #
4183
+ # @option params [required, String] :user_settings_arn
4184
+ # The ARN of the user settings.
4185
+ #
4186
+ # @option params [String] :copy_allowed
4187
+ # Specifies whether the user can copy text from the streaming session to
4188
+ # the local device.
4189
+ #
4190
+ # @option params [String] :paste_allowed
4191
+ # Specifies whether the user can paste text from the local device to the
4192
+ # streaming session.
4193
+ #
4194
+ # @option params [String] :download_allowed
4195
+ # Specifies whether the user can download files from the streaming
4196
+ # session to the local device.
4197
+ #
4198
+ # @option params [String] :upload_allowed
4199
+ # Specifies whether the user can upload files from the local device to
4200
+ # the streaming session.
4201
+ #
4202
+ # @option params [String] :print_allowed
4203
+ # Specifies whether the user can print to the local device.
4204
+ #
4205
+ # @option params [Integer] :disconnect_timeout_in_minutes
4206
+ # The amount of time that a streaming session remains active after users
4207
+ # disconnect.
4208
+ #
4209
+ # @option params [Integer] :idle_disconnect_timeout_in_minutes
4210
+ # The amount of time that users can be idle (inactive) before they are
4211
+ # disconnected from their streaming session and the disconnect timeout
4212
+ # interval begins.
4213
+ #
3526
4214
  # @option params [String] :client_token
3527
4215
  # A unique, case-sensitive identifier that you provide to ensure the
3528
4216
  # idempotency of the request. Idempotency ensures that an API request
@@ -3543,34 +4231,10 @@ module Aws::WorkSpacesWeb
3543
4231
  # If the allowlist and blocklist are empty, the configuration becomes
3544
4232
  # null.
3545
4233
  #
3546
- # @option params [String] :copy_allowed
3547
- # Specifies whether the user can copy text from the streaming session to
3548
- # the local device.
3549
- #
3550
4234
  # @option params [String] :deep_link_allowed
3551
4235
  # Specifies whether the user can use deep links that open automatically
3552
4236
  # when connecting to a session.
3553
4237
  #
3554
- # @option params [Integer] :disconnect_timeout_in_minutes
3555
- # The amount of time that a streaming session remains active after users
3556
- # disconnect.
3557
- #
3558
- # @option params [String] :download_allowed
3559
- # Specifies whether the user can download files from the streaming
3560
- # session to the local device.
3561
- #
3562
- # @option params [Integer] :idle_disconnect_timeout_in_minutes
3563
- # The amount of time that users can be idle (inactive) before they are
3564
- # disconnected from their streaming session and the disconnect timeout
3565
- # interval begins.
3566
- #
3567
- # @option params [String] :paste_allowed
3568
- # Specifies whether the user can paste text from the local device to the
3569
- # streaming session.
3570
- #
3571
- # @option params [String] :print_allowed
3572
- # Specifies whether the user can print to the local device.
3573
- #
3574
4238
  # @option params [Types::ToolbarConfiguration] :toolbar_configuration
3575
4239
  # The configuration of the toolbar. This allows administrators to select
3576
4240
  # the toolbar type and visual mode, set maximum display resolution for
@@ -3578,13 +4242,6 @@ module Aws::WorkSpacesWeb
3578
4242
  # sessions. If administrators do not modify these settings, end users
3579
4243
  # retain control over their toolbar preferences.
3580
4244
  #
3581
- # @option params [String] :upload_allowed
3582
- # Specifies whether the user can upload files from the local device to
3583
- # the streaming session.
3584
- #
3585
- # @option params [required, String] :user_settings_arn
3586
- # The ARN of the user settings.
3587
- #
3588
4245
  # @return [Types::UpdateUserSettingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3589
4246
  #
3590
4247
  # * {Types::UpdateUserSettingsResponse#user_settings #user_settings} => Types::UserSettings
@@ -3592,6 +4249,14 @@ module Aws::WorkSpacesWeb
3592
4249
  # @example Request syntax with placeholder values
3593
4250
  #
3594
4251
  # resp = client.update_user_settings({
4252
+ # user_settings_arn: "ARN", # required
4253
+ # copy_allowed: "Disabled", # accepts Disabled, Enabled
4254
+ # paste_allowed: "Disabled", # accepts Disabled, Enabled
4255
+ # download_allowed: "Disabled", # accepts Disabled, Enabled
4256
+ # upload_allowed: "Disabled", # accepts Disabled, Enabled
4257
+ # print_allowed: "Disabled", # accepts Disabled, Enabled
4258
+ # disconnect_timeout_in_minutes: 1,
4259
+ # idle_disconnect_timeout_in_minutes: 1,
3595
4260
  # client_token: "ClientToken",
3596
4261
  # cookie_synchronization_configuration: {
3597
4262
  # allowlist: [ # required
@@ -3609,29 +4274,27 @@ module Aws::WorkSpacesWeb
3609
4274
  # },
3610
4275
  # ],
3611
4276
  # },
3612
- # copy_allowed: "Disabled", # accepts Disabled, Enabled
3613
4277
  # deep_link_allowed: "Disabled", # accepts Disabled, Enabled
3614
- # disconnect_timeout_in_minutes: 1,
3615
- # download_allowed: "Disabled", # accepts Disabled, Enabled
3616
- # idle_disconnect_timeout_in_minutes: 1,
3617
- # paste_allowed: "Disabled", # accepts Disabled, Enabled
3618
- # print_allowed: "Disabled", # accepts Disabled, Enabled
3619
4278
  # toolbar_configuration: {
3620
- # hidden_toolbar_items: ["Windows"], # accepts Windows, DualMonitor, FullScreen, Webcam, Microphone
3621
- # max_display_resolution: "size4096X2160", # accepts size4096X2160, size3840X2160, size3440X1440, size2560X1440, size1920X1080, size1280X720, size1024X768, size800X600
3622
4279
  # toolbar_type: "Floating", # accepts Floating, Docked
3623
4280
  # visual_mode: "Dark", # accepts Dark, Light
4281
+ # hidden_toolbar_items: ["Windows"], # accepts Windows, DualMonitor, FullScreen, Webcam, Microphone
4282
+ # max_display_resolution: "size4096X2160", # accepts size4096X2160, size3840X2160, size3440X1440, size2560X1440, size1920X1080, size1280X720, size1024X768, size800X600
3624
4283
  # },
3625
- # upload_allowed: "Disabled", # accepts Disabled, Enabled
3626
- # user_settings_arn: "ARN", # required
3627
4284
  # })
3628
4285
  #
3629
4286
  # @example Response structure
3630
4287
  #
3631
- # resp.user_settings.additional_encryption_context #=> Hash
3632
- # resp.user_settings.additional_encryption_context["StringType"] #=> String
4288
+ # resp.user_settings.user_settings_arn #=> String
3633
4289
  # resp.user_settings.associated_portal_arns #=> Array
3634
4290
  # resp.user_settings.associated_portal_arns[0] #=> String
4291
+ # resp.user_settings.copy_allowed #=> String, one of "Disabled", "Enabled"
4292
+ # resp.user_settings.paste_allowed #=> String, one of "Disabled", "Enabled"
4293
+ # resp.user_settings.download_allowed #=> String, one of "Disabled", "Enabled"
4294
+ # resp.user_settings.upload_allowed #=> String, one of "Disabled", "Enabled"
4295
+ # resp.user_settings.print_allowed #=> String, one of "Disabled", "Enabled"
4296
+ # resp.user_settings.disconnect_timeout_in_minutes #=> Integer
4297
+ # resp.user_settings.idle_disconnect_timeout_in_minutes #=> Integer
3635
4298
  # resp.user_settings.cookie_synchronization_configuration.allowlist #=> Array
3636
4299
  # resp.user_settings.cookie_synchronization_configuration.allowlist[0].domain #=> String
3637
4300
  # resp.user_settings.cookie_synchronization_configuration.allowlist[0].name #=> String
@@ -3640,21 +4303,15 @@ module Aws::WorkSpacesWeb
3640
4303
  # resp.user_settings.cookie_synchronization_configuration.blocklist[0].domain #=> String
3641
4304
  # resp.user_settings.cookie_synchronization_configuration.blocklist[0].name #=> String
3642
4305
  # resp.user_settings.cookie_synchronization_configuration.blocklist[0].path #=> String
3643
- # resp.user_settings.copy_allowed #=> String, one of "Disabled", "Enabled"
3644
4306
  # resp.user_settings.customer_managed_key #=> String
4307
+ # resp.user_settings.additional_encryption_context #=> Hash
4308
+ # resp.user_settings.additional_encryption_context["StringType"] #=> String
3645
4309
  # resp.user_settings.deep_link_allowed #=> String, one of "Disabled", "Enabled"
3646
- # resp.user_settings.disconnect_timeout_in_minutes #=> Integer
3647
- # resp.user_settings.download_allowed #=> String, one of "Disabled", "Enabled"
3648
- # resp.user_settings.idle_disconnect_timeout_in_minutes #=> Integer
3649
- # resp.user_settings.paste_allowed #=> String, one of "Disabled", "Enabled"
3650
- # resp.user_settings.print_allowed #=> String, one of "Disabled", "Enabled"
4310
+ # resp.user_settings.toolbar_configuration.toolbar_type #=> String, one of "Floating", "Docked"
4311
+ # resp.user_settings.toolbar_configuration.visual_mode #=> String, one of "Dark", "Light"
3651
4312
  # resp.user_settings.toolbar_configuration.hidden_toolbar_items #=> Array
3652
4313
  # resp.user_settings.toolbar_configuration.hidden_toolbar_items[0] #=> String, one of "Windows", "DualMonitor", "FullScreen", "Webcam", "Microphone"
3653
4314
  # resp.user_settings.toolbar_configuration.max_display_resolution #=> String, one of "size4096X2160", "size3840X2160", "size3440X1440", "size2560X1440", "size1920X1080", "size1280X720", "size1024X768", "size800X600"
3654
- # resp.user_settings.toolbar_configuration.toolbar_type #=> String, one of "Floating", "Docked"
3655
- # resp.user_settings.toolbar_configuration.visual_mode #=> String, one of "Dark", "Light"
3656
- # resp.user_settings.upload_allowed #=> String, one of "Disabled", "Enabled"
3657
- # resp.user_settings.user_settings_arn #=> String
3658
4315
  #
3659
4316
  # @see http://docs.aws.amazon.com/goto/WebAPI/workspaces-web-2020-07-08/UpdateUserSettings AWS API Documentation
3660
4317
  #
@@ -3683,7 +4340,7 @@ module Aws::WorkSpacesWeb
3683
4340
  tracer: tracer
3684
4341
  )
3685
4342
  context[:gem_name] = 'aws-sdk-workspacesweb'
3686
- context[:gem_version] = '1.44.0'
4343
+ context[:gem_version] = '1.45.0'
3687
4344
  Seahorse::Client::Request.new(handlers, context)
3688
4345
  end
3689
4346