1
+ # -*- coding: utf8 -*-
2
+ # Copyright (c) 2017-2021 THL A29 Limited, a Tencent company. All Rights Reserved.
3
+ #
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ #
8
+ # http://www.apache.org/licenses/LICENSE-2.0
9
+ #
10
+ # Unless required by applicable law or agreed to in writing, software
11
+ # distributed under the License is distributed on an "AS IS" BASIS,
12
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ # See the License for the specific language governing permissions and
14
+ # limitations under the License.
15
+
16
+ import json
17
+
18
+ from tencentcloud .common .exception .tencent_cloud_sdk_exception import TencentCloudSDKException
19
+ from tencentcloud .common .abstract_client import AbstractClient
20
+ from tencentcloud .iap .v20240713 import models
21
+
22
+
23
+ class IapClient (AbstractClient ):
24
+ _apiVersion = '2024-07-13'
25
+ _endpoint = 'iap.intl.tencentcloudapi.com'
26
+ _service = 'iap'
27
+
28
+
29
+ def CreateIAPUserOIDCConfig (self , request ):
30
+ """This API is used to create a user OIDC configuration. Only one user OIDC IdP can be created, and the user SAML SSO IdP will be automatically disabled after it is created.
31
+
32
+ :param request: Request instance for CreateIAPUserOIDCConfig.
33
+ :type request: :class:`tencentcloud.iap.v20240713.models.CreateIAPUserOIDCConfigRequest`
34
+ :rtype: :class:`tencentcloud.iap.v20240713.models.CreateIAPUserOIDCConfigResponse`
35
+
36
+ """
37
+ try :
38
+ params = request ._serialize ()
39
+ headers = request .headers
40
+ body = self .call ("CreateIAPUserOIDCConfig" , params , headers = headers )
41
+ response = json .loads (body )
42
+ model = models .CreateIAPUserOIDCConfigResponse ()
43
+ model ._deserialize (response ["Response" ])
44
+ return model
45
+ except Exception as e :
46
+ if isinstance (e , TencentCloudSDKException ):
47
+ raise
48
+ else :
49
+ raise TencentCloudSDKException (type (e ).__name__ , str (e ))
50
+
51
+
52
+ def DescribeIAPLoginSessionDuration (self , request ):
53
+ """This API is used to query login session duration.
54
+
55
+ :param request: Request instance for DescribeIAPLoginSessionDuration.
56
+ :type request: :class:`tencentcloud.iap.v20240713.models.DescribeIAPLoginSessionDurationRequest`
57
+ :rtype: :class:`tencentcloud.iap.v20240713.models.DescribeIAPLoginSessionDurationResponse`
58
+
59
+ """
60
+ try :
61
+ params = request ._serialize ()
62
+ headers = request .headers
63
+ body = self .call ("DescribeIAPLoginSessionDuration" , params , headers = headers )
64
+ response = json .loads (body )
65
+ model = models .DescribeIAPLoginSessionDurationResponse ()
66
+ model ._deserialize (response ["Response" ])
67
+ return model
68
+ except Exception as e :
69
+ if isinstance (e , TencentCloudSDKException ):
70
+ raise
71
+ else :
72
+ raise TencentCloudSDKException (type (e ).__name__ , str (e ))
73
+
74
+
75
+ def DescribeIAPUserOIDCConfig (self , request ):
76
+ """This API is used to query a user OIDC configuration.
77
+
78
+ :param request: Request instance for DescribeIAPUserOIDCConfig.
79
+ :type request: :class:`tencentcloud.iap.v20240713.models.DescribeIAPUserOIDCConfigRequest`
80
+ :rtype: :class:`tencentcloud.iap.v20240713.models.DescribeIAPUserOIDCConfigResponse`
81
+
82
+ """
83
+ try :
84
+ params = request ._serialize ()
85
+ headers = request .headers
86
+ body = self .call ("DescribeIAPUserOIDCConfig" , params , headers = headers )
87
+ response = json .loads (body )
88
+ model = models .DescribeIAPUserOIDCConfigResponse ()
89
+ model ._deserialize (response ["Response" ])
90
+ return model
91
+ except Exception as e :
92
+ if isinstance (e , TencentCloudSDKException ):
93
+ raise
94
+ else :
95
+ raise TencentCloudSDKException (type (e ).__name__ , str (e ))
96
+
97
+
98
+ def DisableIAPUserSSO (self , request ):
99
+ """This API is used to disable user SSO.
100
+
101
+ :param request: Request instance for DisableIAPUserSSO.
102
+ :type request: :class:`tencentcloud.iap.v20240713.models.DisableIAPUserSSORequest`
103
+ :rtype: :class:`tencentcloud.iap.v20240713.models.DisableIAPUserSSOResponse`
104
+
105
+ """
106
+ try :
107
+ params = request ._serialize ()
108
+ headers = request .headers
109
+ body = self .call ("DisableIAPUserSSO" , params , headers = headers )
110
+ response = json .loads (body )
111
+ model = models .DisableIAPUserSSOResponse ()
112
+ model ._deserialize (response ["Response" ])
113
+ return model
114
+ except Exception as e :
115
+ if isinstance (e , TencentCloudSDKException ):
116
+ raise
117
+ else :
118
+ raise TencentCloudSDKException (type (e ).__name__ , str (e ))
119
+
120
+
121
+ def ModifyIAPLoginSessionDuration (self , request ):
122
+ """This API is used to modify login session duration.
123
+
124
+ :param request: Request instance for ModifyIAPLoginSessionDuration.
125
+ :type request: :class:`tencentcloud.iap.v20240713.models.ModifyIAPLoginSessionDurationRequest`
126
+ :rtype: :class:`tencentcloud.iap.v20240713.models.ModifyIAPLoginSessionDurationResponse`
127
+
128
+ """
129
+ try :
130
+ params = request ._serialize ()
131
+ headers = request .headers
132
+ body = self .call ("ModifyIAPLoginSessionDuration" , params , headers = headers )
133
+ response = json .loads (body )
134
+ model = models .ModifyIAPLoginSessionDurationResponse ()
135
+ model ._deserialize (response ["Response" ])
136
+ return model
137
+ except Exception as e :
138
+ if isinstance (e , TencentCloudSDKException ):
139
+ raise
140
+ else :
141
+ raise TencentCloudSDKException (type (e ).__name__ , str (e ))
142
+
143
+
144
+ def UpdateIAPUserOIDCConfig (self , request ):
145
+ """This API is used to modify a user OIDC configuration.
146
+
147
+ :param request: Request instance for UpdateIAPUserOIDCConfig.
148
+ :type request: :class:`tencentcloud.iap.v20240713.models.UpdateIAPUserOIDCConfigRequest`
149
+ :rtype: :class:`tencentcloud.iap.v20240713.models.UpdateIAPUserOIDCConfigResponse`
150
+
151
+ """
152
+ try :
153
+ params = request ._serialize ()
154
+ headers = request .headers
155
+ body = self .call ("UpdateIAPUserOIDCConfig" , params , headers = headers )
156
+ response = json .loads (body )
157
+ model = models .UpdateIAPUserOIDCConfigResponse ()
158
+ model ._deserialize (response ["Response" ])
159
+ return model
160
+ except Exception as e :
161
+ if isinstance (e , TencentCloudSDKException ):
162
+ raise
163
+ else :
164
+ raise TencentCloudSDKException (type (e ).__name__ , str (e ))
0 commit comments