Sfoglia il codice sorgente

Supported bind idp user api.

sdk-team 10 mesi fa
parent
commit
5048e01469

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.2115
+1.36.2116

+ 12 - 0
eiam/CMakeLists.txt

@@ -35,6 +35,8 @@ set(eiam_public_header_model
 	include/alibabacloud/eiam/model/AuthorizeApplicationToOrganizationalUnitsResult.h
 	include/alibabacloud/eiam/model/AuthorizeApplicationToUsersRequest.h
 	include/alibabacloud/eiam/model/AuthorizeApplicationToUsersResult.h
+	include/alibabacloud/eiam/model/BindUserAuthnSourceMappingRequest.h
+	include/alibabacloud/eiam/model/BindUserAuthnSourceMappingResult.h
 	include/alibabacloud/eiam/model/CreateApplicationRequest.h
 	include/alibabacloud/eiam/model/CreateApplicationResult.h
 	include/alibabacloud/eiam/model/CreateApplicationClientSecretRequest.h
@@ -311,6 +313,8 @@ set(eiam_public_header_model
 	include/alibabacloud/eiam/model/ListRegionsResult.h
 	include/alibabacloud/eiam/model/ListSynchronizationJobsRequest.h
 	include/alibabacloud/eiam/model/ListSynchronizationJobsResult.h
+	include/alibabacloud/eiam/model/ListUserAuthnSourceMappingsRequest.h
+	include/alibabacloud/eiam/model/ListUserAuthnSourceMappingsResult.h
 	include/alibabacloud/eiam/model/ListUsersRequest.h
 	include/alibabacloud/eiam/model/ListUsersResult.h
 	include/alibabacloud/eiam/model/ListUsersForApplicationRequest.h
@@ -365,6 +369,8 @@ set(eiam_public_header_model
 	include/alibabacloud/eiam/model/SetPasswordInitializationConfigurationResult.h
 	include/alibabacloud/eiam/model/SetUserPrimaryOrganizationalUnitRequest.h
 	include/alibabacloud/eiam/model/SetUserPrimaryOrganizationalUnitResult.h
+	include/alibabacloud/eiam/model/UnbindUserAuthnSourceMappingRequest.h
+	include/alibabacloud/eiam/model/UnbindUserAuthnSourceMappingResult.h
 	include/alibabacloud/eiam/model/UnlockUserRequest.h
 	include/alibabacloud/eiam/model/UnlockUserResult.h
 	include/alibabacloud/eiam/model/UpdateApplicationAuthorizationTypeRequest.h
@@ -440,6 +446,8 @@ set(eiam_src
 	src/model/AuthorizeApplicationToOrganizationalUnitsResult.cc
 	src/model/AuthorizeApplicationToUsersRequest.cc
 	src/model/AuthorizeApplicationToUsersResult.cc
+	src/model/BindUserAuthnSourceMappingRequest.cc
+	src/model/BindUserAuthnSourceMappingResult.cc
 	src/model/CreateApplicationRequest.cc
 	src/model/CreateApplicationResult.cc
 	src/model/CreateApplicationClientSecretRequest.cc
@@ -716,6 +724,8 @@ set(eiam_src
 	src/model/ListRegionsResult.cc
 	src/model/ListSynchronizationJobsRequest.cc
 	src/model/ListSynchronizationJobsResult.cc
+	src/model/ListUserAuthnSourceMappingsRequest.cc
+	src/model/ListUserAuthnSourceMappingsResult.cc
 	src/model/ListUsersRequest.cc
 	src/model/ListUsersResult.cc
 	src/model/ListUsersForApplicationRequest.cc
@@ -770,6 +780,8 @@ set(eiam_src
 	src/model/SetPasswordInitializationConfigurationResult.cc
 	src/model/SetUserPrimaryOrganizationalUnitRequest.cc
 	src/model/SetUserPrimaryOrganizationalUnitResult.cc
+	src/model/UnbindUserAuthnSourceMappingRequest.cc
+	src/model/UnbindUserAuthnSourceMappingResult.cc
 	src/model/UnlockUserRequest.cc
 	src/model/UnlockUserResult.cc
 	src/model/UpdateApplicationAuthorizationTypeRequest.cc

+ 24 - 0
eiam/include/alibabacloud/eiam/EiamClient.h

@@ -36,6 +36,8 @@
 #include "model/AuthorizeApplicationToOrganizationalUnitsResult.h"
 #include "model/AuthorizeApplicationToUsersRequest.h"
 #include "model/AuthorizeApplicationToUsersResult.h"
+#include "model/BindUserAuthnSourceMappingRequest.h"
+#include "model/BindUserAuthnSourceMappingResult.h"
 #include "model/CreateApplicationRequest.h"
 #include "model/CreateApplicationResult.h"
 #include "model/CreateApplicationClientSecretRequest.h"
@@ -312,6 +314,8 @@
 #include "model/ListRegionsResult.h"
 #include "model/ListSynchronizationJobsRequest.h"
 #include "model/ListSynchronizationJobsResult.h"
+#include "model/ListUserAuthnSourceMappingsRequest.h"
+#include "model/ListUserAuthnSourceMappingsResult.h"
 #include "model/ListUsersRequest.h"
 #include "model/ListUsersResult.h"
 #include "model/ListUsersForApplicationRequest.h"
@@ -366,6 +370,8 @@
 #include "model/SetPasswordInitializationConfigurationResult.h"
 #include "model/SetUserPrimaryOrganizationalUnitRequest.h"
 #include "model/SetUserPrimaryOrganizationalUnitResult.h"
+#include "model/UnbindUserAuthnSourceMappingRequest.h"
+#include "model/UnbindUserAuthnSourceMappingResult.h"
 #include "model/UnlockUserRequest.h"
 #include "model/UnlockUserResult.h"
 #include "model/UpdateApplicationAuthorizationTypeRequest.h"
@@ -454,6 +460,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AuthorizeApplicationToUsersResult> AuthorizeApplicationToUsersOutcome;
 			typedef std::future<AuthorizeApplicationToUsersOutcome> AuthorizeApplicationToUsersOutcomeCallable;
 			typedef std::function<void(const EiamClient*, const Model::AuthorizeApplicationToUsersRequest&, const AuthorizeApplicationToUsersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AuthorizeApplicationToUsersAsyncHandler;
+			typedef Outcome<Error, Model::BindUserAuthnSourceMappingResult> BindUserAuthnSourceMappingOutcome;
+			typedef std::future<BindUserAuthnSourceMappingOutcome> BindUserAuthnSourceMappingOutcomeCallable;
+			typedef std::function<void(const EiamClient*, const Model::BindUserAuthnSourceMappingRequest&, const BindUserAuthnSourceMappingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> BindUserAuthnSourceMappingAsyncHandler;
 			typedef Outcome<Error, Model::CreateApplicationResult> CreateApplicationOutcome;
 			typedef std::future<CreateApplicationOutcome> CreateApplicationOutcomeCallable;
 			typedef std::function<void(const EiamClient*, const Model::CreateApplicationRequest&, const CreateApplicationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateApplicationAsyncHandler;
@@ -868,6 +877,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListSynchronizationJobsResult> ListSynchronizationJobsOutcome;
 			typedef std::future<ListSynchronizationJobsOutcome> ListSynchronizationJobsOutcomeCallable;
 			typedef std::function<void(const EiamClient*, const Model::ListSynchronizationJobsRequest&, const ListSynchronizationJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSynchronizationJobsAsyncHandler;
+			typedef Outcome<Error, Model::ListUserAuthnSourceMappingsResult> ListUserAuthnSourceMappingsOutcome;
+			typedef std::future<ListUserAuthnSourceMappingsOutcome> ListUserAuthnSourceMappingsOutcomeCallable;
+			typedef std::function<void(const EiamClient*, const Model::ListUserAuthnSourceMappingsRequest&, const ListUserAuthnSourceMappingsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListUserAuthnSourceMappingsAsyncHandler;
 			typedef Outcome<Error, Model::ListUsersResult> ListUsersOutcome;
 			typedef std::future<ListUsersOutcome> ListUsersOutcomeCallable;
 			typedef std::function<void(const EiamClient*, const Model::ListUsersRequest&, const ListUsersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListUsersAsyncHandler;
@@ -949,6 +961,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::SetUserPrimaryOrganizationalUnitResult> SetUserPrimaryOrganizationalUnitOutcome;
 			typedef std::future<SetUserPrimaryOrganizationalUnitOutcome> SetUserPrimaryOrganizationalUnitOutcomeCallable;
 			typedef std::function<void(const EiamClient*, const Model::SetUserPrimaryOrganizationalUnitRequest&, const SetUserPrimaryOrganizationalUnitOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetUserPrimaryOrganizationalUnitAsyncHandler;
+			typedef Outcome<Error, Model::UnbindUserAuthnSourceMappingResult> UnbindUserAuthnSourceMappingOutcome;
+			typedef std::future<UnbindUserAuthnSourceMappingOutcome> UnbindUserAuthnSourceMappingOutcomeCallable;
+			typedef std::function<void(const EiamClient*, const Model::UnbindUserAuthnSourceMappingRequest&, const UnbindUserAuthnSourceMappingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnbindUserAuthnSourceMappingAsyncHandler;
 			typedef Outcome<Error, Model::UnlockUserResult> UnlockUserOutcome;
 			typedef std::future<UnlockUserOutcome> UnlockUserOutcomeCallable;
 			typedef std::function<void(const EiamClient*, const Model::UnlockUserRequest&, const UnlockUserOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnlockUserAsyncHandler;
@@ -1062,6 +1077,9 @@ namespace AlibabaCloud
 			AuthorizeApplicationToUsersOutcome authorizeApplicationToUsers(const Model::AuthorizeApplicationToUsersRequest &request)const;
 			void authorizeApplicationToUsersAsync(const Model::AuthorizeApplicationToUsersRequest& request, const AuthorizeApplicationToUsersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AuthorizeApplicationToUsersOutcomeCallable authorizeApplicationToUsersCallable(const Model::AuthorizeApplicationToUsersRequest& request) const;
+			BindUserAuthnSourceMappingOutcome bindUserAuthnSourceMapping(const Model::BindUserAuthnSourceMappingRequest &request)const;
+			void bindUserAuthnSourceMappingAsync(const Model::BindUserAuthnSourceMappingRequest& request, const BindUserAuthnSourceMappingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			BindUserAuthnSourceMappingOutcomeCallable bindUserAuthnSourceMappingCallable(const Model::BindUserAuthnSourceMappingRequest& request) const;
 			CreateApplicationOutcome createApplication(const Model::CreateApplicationRequest &request)const;
 			void createApplicationAsync(const Model::CreateApplicationRequest& request, const CreateApplicationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateApplicationOutcomeCallable createApplicationCallable(const Model::CreateApplicationRequest& request) const;
@@ -1476,6 +1494,9 @@ namespace AlibabaCloud
 			ListSynchronizationJobsOutcome listSynchronizationJobs(const Model::ListSynchronizationJobsRequest &request)const;
 			void listSynchronizationJobsAsync(const Model::ListSynchronizationJobsRequest& request, const ListSynchronizationJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListSynchronizationJobsOutcomeCallable listSynchronizationJobsCallable(const Model::ListSynchronizationJobsRequest& request) const;
+			ListUserAuthnSourceMappingsOutcome listUserAuthnSourceMappings(const Model::ListUserAuthnSourceMappingsRequest &request)const;
+			void listUserAuthnSourceMappingsAsync(const Model::ListUserAuthnSourceMappingsRequest& request, const ListUserAuthnSourceMappingsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListUserAuthnSourceMappingsOutcomeCallable listUserAuthnSourceMappingsCallable(const Model::ListUserAuthnSourceMappingsRequest& request) const;
 			ListUsersOutcome listUsers(const Model::ListUsersRequest &request)const;
 			void listUsersAsync(const Model::ListUsersRequest& request, const ListUsersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListUsersOutcomeCallable listUsersCallable(const Model::ListUsersRequest& request) const;
@@ -1557,6 +1578,9 @@ namespace AlibabaCloud
 			SetUserPrimaryOrganizationalUnitOutcome setUserPrimaryOrganizationalUnit(const Model::SetUserPrimaryOrganizationalUnitRequest &request)const;
 			void setUserPrimaryOrganizationalUnitAsync(const Model::SetUserPrimaryOrganizationalUnitRequest& request, const SetUserPrimaryOrganizationalUnitAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SetUserPrimaryOrganizationalUnitOutcomeCallable setUserPrimaryOrganizationalUnitCallable(const Model::SetUserPrimaryOrganizationalUnitRequest& request) const;
+			UnbindUserAuthnSourceMappingOutcome unbindUserAuthnSourceMapping(const Model::UnbindUserAuthnSourceMappingRequest &request)const;
+			void unbindUserAuthnSourceMappingAsync(const Model::UnbindUserAuthnSourceMappingRequest& request, const UnbindUserAuthnSourceMappingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UnbindUserAuthnSourceMappingOutcomeCallable unbindUserAuthnSourceMappingCallable(const Model::UnbindUserAuthnSourceMappingRequest& request) const;
 			UnlockUserOutcome unlockUser(const Model::UnlockUserRequest &request)const;
 			void unlockUserAsync(const Model::UnlockUserRequest& request, const UnlockUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UnlockUserOutcomeCallable unlockUserCallable(const Model::UnlockUserRequest& request) const;

+ 51 - 0
eiam/include/alibabacloud/eiam/model/BindUserAuthnSourceMappingRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIAM_MODEL_BINDUSERAUTHNSOURCEMAPPINGREQUEST_H_
+#define ALIBABACLOUD_EIAM_MODEL_BINDUSERAUTHNSOURCEMAPPINGREQUEST_H_
+
+#include <alibabacloud/eiam/EiamExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Eiam {
+namespace Model {
+class ALIBABACLOUD_EIAM_EXPORT BindUserAuthnSourceMappingRequest : public RpcServiceRequest {
+public:
+	BindUserAuthnSourceMappingRequest();
+	~BindUserAuthnSourceMappingRequest();
+	std::string getUserId() const;
+	void setUserId(const std::string &userId);
+	std::string getIdentityProviderId() const;
+	void setIdentityProviderId(const std::string &identityProviderId);
+	std::string getUserExternalId() const;
+	void setUserExternalId(const std::string &userExternalId);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string userId_;
+	std::string identityProviderId_;
+	std::string userExternalId_;
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace Eiam
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_EIAM_MODEL_BINDUSERAUTHNSOURCEMAPPINGREQUEST_H_

+ 49 - 0
eiam/include/alibabacloud/eiam/model/BindUserAuthnSourceMappingResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIAM_MODEL_BINDUSERAUTHNSOURCEMAPPINGRESULT_H_
+#define ALIBABACLOUD_EIAM_MODEL_BINDUSERAUTHNSOURCEMAPPINGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eiam/EiamExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eiam
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIAM_EXPORT BindUserAuthnSourceMappingResult : public ServiceResult
+			{
+			public:
+
+
+				BindUserAuthnSourceMappingResult();
+				explicit BindUserAuthnSourceMappingResult(const std::string &payload);
+				~BindUserAuthnSourceMappingResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIAM_MODEL_BINDUSERAUTHNSOURCEMAPPINGRESULT_H_

+ 60 - 0
eiam/include/alibabacloud/eiam/model/ListUserAuthnSourceMappingsRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIAM_MODEL_LISTUSERAUTHNSOURCEMAPPINGSREQUEST_H_
+#define ALIBABACLOUD_EIAM_MODEL_LISTUSERAUTHNSOURCEMAPPINGSREQUEST_H_
+
+#include <alibabacloud/eiam/EiamExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Eiam {
+namespace Model {
+class ALIBABACLOUD_EIAM_EXPORT ListUserAuthnSourceMappingsRequest : public RpcServiceRequest {
+public:
+	ListUserAuthnSourceMappingsRequest();
+	~ListUserAuthnSourceMappingsRequest();
+	std::string getUserId() const;
+	void setUserId(const std::string &userId);
+	std::string getNextToken() const;
+	void setNextToken(const std::string &nextToken);
+	std::string getIdentityProviderId() const;
+	void setIdentityProviderId(const std::string &identityProviderId);
+	std::string getPreviousToken() const;
+	void setPreviousToken(const std::string &previousToken);
+	std::string getUserExternalId() const;
+	void setUserExternalId(const std::string &userExternalId);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	int getMaxResults() const;
+	void setMaxResults(int maxResults);
+
+private:
+	std::string userId_;
+	std::string nextToken_;
+	std::string identityProviderId_;
+	std::string previousToken_;
+	std::string userExternalId_;
+	std::string instanceId_;
+	int maxResults_;
+};
+} // namespace Model
+} // namespace Eiam
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_EIAM_MODEL_LISTUSERAUTHNSOURCEMAPPINGSREQUEST_H_

+ 69 - 0
eiam/include/alibabacloud/eiam/model/ListUserAuthnSourceMappingsResult.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIAM_MODEL_LISTUSERAUTHNSOURCEMAPPINGSRESULT_H_
+#define ALIBABACLOUD_EIAM_MODEL_LISTUSERAUTHNSOURCEMAPPINGSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eiam/EiamExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eiam
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIAM_EXPORT ListUserAuthnSourceMappingsResult : public ServiceResult
+			{
+			public:
+				struct UserAuthnSourceMapping
+				{
+					std::string identityProviderId;
+					std::string instanceId;
+					std::string userId;
+					long createTime;
+					long updateTime;
+					std::string userExternalId;
+					std::string authnSourceType;
+				};
+
+
+				ListUserAuthnSourceMappingsResult();
+				explicit ListUserAuthnSourceMappingsResult(const std::string &payload);
+				~ListUserAuthnSourceMappingsResult();
+				int getTotalCount()const;
+				std::string getPreviousToken()const;
+				std::string getNextToken()const;
+				std::vector<UserAuthnSourceMapping> getUserAuthnSourceMappings()const;
+				int getMaxResults()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				std::string previousToken_;
+				std::string nextToken_;
+				std::vector<UserAuthnSourceMapping> userAuthnSourceMappings_;
+				int maxResults_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIAM_MODEL_LISTUSERAUTHNSOURCEMAPPINGSRESULT_H_

+ 51 - 0
eiam/include/alibabacloud/eiam/model/UnbindUserAuthnSourceMappingRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIAM_MODEL_UNBINDUSERAUTHNSOURCEMAPPINGREQUEST_H_
+#define ALIBABACLOUD_EIAM_MODEL_UNBINDUSERAUTHNSOURCEMAPPINGREQUEST_H_
+
+#include <alibabacloud/eiam/EiamExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Eiam {
+namespace Model {
+class ALIBABACLOUD_EIAM_EXPORT UnbindUserAuthnSourceMappingRequest : public RpcServiceRequest {
+public:
+	UnbindUserAuthnSourceMappingRequest();
+	~UnbindUserAuthnSourceMappingRequest();
+	std::string getUserId() const;
+	void setUserId(const std::string &userId);
+	std::string getIdentityProviderId() const;
+	void setIdentityProviderId(const std::string &identityProviderId);
+	std::string getUserExternalId() const;
+	void setUserExternalId(const std::string &userExternalId);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string userId_;
+	std::string identityProviderId_;
+	std::string userExternalId_;
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace Eiam
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_EIAM_MODEL_UNBINDUSERAUTHNSOURCEMAPPINGREQUEST_H_

+ 49 - 0
eiam/include/alibabacloud/eiam/model/UnbindUserAuthnSourceMappingResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIAM_MODEL_UNBINDUSERAUTHNSOURCEMAPPINGRESULT_H_
+#define ALIBABACLOUD_EIAM_MODEL_UNBINDUSERAUTHNSOURCEMAPPINGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eiam/EiamExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eiam
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIAM_EXPORT UnbindUserAuthnSourceMappingResult : public ServiceResult
+			{
+			public:
+
+
+				UnbindUserAuthnSourceMappingResult();
+				explicit UnbindUserAuthnSourceMappingResult(const std::string &payload);
+				~UnbindUserAuthnSourceMappingResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIAM_MODEL_UNBINDUSERAUTHNSOURCEMAPPINGRESULT_H_

+ 108 - 0
eiam/src/EiamClient.cc

@@ -303,6 +303,42 @@ EiamClient::AuthorizeApplicationToUsersOutcomeCallable EiamClient::authorizeAppl
 	return task->get_future();
 }
 
+EiamClient::BindUserAuthnSourceMappingOutcome EiamClient::bindUserAuthnSourceMapping(const BindUserAuthnSourceMappingRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return BindUserAuthnSourceMappingOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return BindUserAuthnSourceMappingOutcome(BindUserAuthnSourceMappingResult(outcome.result()));
+	else
+		return BindUserAuthnSourceMappingOutcome(outcome.error());
+}
+
+void EiamClient::bindUserAuthnSourceMappingAsync(const BindUserAuthnSourceMappingRequest& request, const BindUserAuthnSourceMappingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, bindUserAuthnSourceMapping(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EiamClient::BindUserAuthnSourceMappingOutcomeCallable EiamClient::bindUserAuthnSourceMappingCallable(const BindUserAuthnSourceMappingRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<BindUserAuthnSourceMappingOutcome()>>(
+			[this, request]()
+			{
+			return this->bindUserAuthnSourceMapping(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EiamClient::CreateApplicationOutcome EiamClient::createApplication(const CreateApplicationRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -5271,6 +5307,42 @@ EiamClient::ListSynchronizationJobsOutcomeCallable EiamClient::listSynchronizati
 	return task->get_future();
 }
 
+EiamClient::ListUserAuthnSourceMappingsOutcome EiamClient::listUserAuthnSourceMappings(const ListUserAuthnSourceMappingsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListUserAuthnSourceMappingsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListUserAuthnSourceMappingsOutcome(ListUserAuthnSourceMappingsResult(outcome.result()));
+	else
+		return ListUserAuthnSourceMappingsOutcome(outcome.error());
+}
+
+void EiamClient::listUserAuthnSourceMappingsAsync(const ListUserAuthnSourceMappingsRequest& request, const ListUserAuthnSourceMappingsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listUserAuthnSourceMappings(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EiamClient::ListUserAuthnSourceMappingsOutcomeCallable EiamClient::listUserAuthnSourceMappingsCallable(const ListUserAuthnSourceMappingsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListUserAuthnSourceMappingsOutcome()>>(
+			[this, request]()
+			{
+			return this->listUserAuthnSourceMappings(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EiamClient::ListUsersOutcome EiamClient::listUsers(const ListUsersRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -6243,6 +6315,42 @@ EiamClient::SetUserPrimaryOrganizationalUnitOutcomeCallable EiamClient::setUserP
 	return task->get_future();
 }
 
+EiamClient::UnbindUserAuthnSourceMappingOutcome EiamClient::unbindUserAuthnSourceMapping(const UnbindUserAuthnSourceMappingRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UnbindUserAuthnSourceMappingOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UnbindUserAuthnSourceMappingOutcome(UnbindUserAuthnSourceMappingResult(outcome.result()));
+	else
+		return UnbindUserAuthnSourceMappingOutcome(outcome.error());
+}
+
+void EiamClient::unbindUserAuthnSourceMappingAsync(const UnbindUserAuthnSourceMappingRequest& request, const UnbindUserAuthnSourceMappingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, unbindUserAuthnSourceMapping(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EiamClient::UnbindUserAuthnSourceMappingOutcomeCallable EiamClient::unbindUserAuthnSourceMappingCallable(const UnbindUserAuthnSourceMappingRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UnbindUserAuthnSourceMappingOutcome()>>(
+			[this, request]()
+			{
+			return this->unbindUserAuthnSourceMapping(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EiamClient::UnlockUserOutcome EiamClient::unlockUser(const UnlockUserRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 63 - 0
eiam/src/model/BindUserAuthnSourceMappingRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/eiam/model/BindUserAuthnSourceMappingRequest.h>
+
+using AlibabaCloud::Eiam::Model::BindUserAuthnSourceMappingRequest;
+
+BindUserAuthnSourceMappingRequest::BindUserAuthnSourceMappingRequest()
+    : RpcServiceRequest("eiam", "2021-12-01", "BindUserAuthnSourceMapping") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+BindUserAuthnSourceMappingRequest::~BindUserAuthnSourceMappingRequest() {}
+
+std::string BindUserAuthnSourceMappingRequest::getUserId() const {
+  return userId_;
+}
+
+void BindUserAuthnSourceMappingRequest::setUserId(const std::string &userId) {
+  userId_ = userId;
+  setParameter(std::string("UserId"), userId);
+}
+
+std::string BindUserAuthnSourceMappingRequest::getIdentityProviderId() const {
+  return identityProviderId_;
+}
+
+void BindUserAuthnSourceMappingRequest::setIdentityProviderId(const std::string &identityProviderId) {
+  identityProviderId_ = identityProviderId;
+  setParameter(std::string("IdentityProviderId"), identityProviderId);
+}
+
+std::string BindUserAuthnSourceMappingRequest::getUserExternalId() const {
+  return userExternalId_;
+}
+
+void BindUserAuthnSourceMappingRequest::setUserExternalId(const std::string &userExternalId) {
+  userExternalId_ = userExternalId;
+  setParameter(std::string("UserExternalId"), userExternalId);
+}
+
+std::string BindUserAuthnSourceMappingRequest::getInstanceId() const {
+  return instanceId_;
+}
+
+void BindUserAuthnSourceMappingRequest::setInstanceId(const std::string &instanceId) {
+  instanceId_ = instanceId;
+  setParameter(std::string("InstanceId"), instanceId);
+}
+

+ 44 - 0
eiam/src/model/BindUserAuthnSourceMappingResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/eiam/model/BindUserAuthnSourceMappingResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eiam;
+using namespace AlibabaCloud::Eiam::Model;
+
+BindUserAuthnSourceMappingResult::BindUserAuthnSourceMappingResult() :
+	ServiceResult()
+{}
+
+BindUserAuthnSourceMappingResult::BindUserAuthnSourceMappingResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+BindUserAuthnSourceMappingResult::~BindUserAuthnSourceMappingResult()
+{}
+
+void BindUserAuthnSourceMappingResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 90 - 0
eiam/src/model/ListUserAuthnSourceMappingsRequest.cc

@@ -0,0 +1,90 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/eiam/model/ListUserAuthnSourceMappingsRequest.h>
+
+using AlibabaCloud::Eiam::Model::ListUserAuthnSourceMappingsRequest;
+
+ListUserAuthnSourceMappingsRequest::ListUserAuthnSourceMappingsRequest()
+    : RpcServiceRequest("eiam", "2021-12-01", "ListUserAuthnSourceMappings") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListUserAuthnSourceMappingsRequest::~ListUserAuthnSourceMappingsRequest() {}
+
+std::string ListUserAuthnSourceMappingsRequest::getUserId() const {
+  return userId_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setUserId(const std::string &userId) {
+  userId_ = userId;
+  setParameter(std::string("UserId"), userId);
+}
+
+std::string ListUserAuthnSourceMappingsRequest::getNextToken() const {
+  return nextToken_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setNextToken(const std::string &nextToken) {
+  nextToken_ = nextToken;
+  setParameter(std::string("NextToken"), nextToken);
+}
+
+std::string ListUserAuthnSourceMappingsRequest::getIdentityProviderId() const {
+  return identityProviderId_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setIdentityProviderId(const std::string &identityProviderId) {
+  identityProviderId_ = identityProviderId;
+  setParameter(std::string("IdentityProviderId"), identityProviderId);
+}
+
+std::string ListUserAuthnSourceMappingsRequest::getPreviousToken() const {
+  return previousToken_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setPreviousToken(const std::string &previousToken) {
+  previousToken_ = previousToken;
+  setParameter(std::string("PreviousToken"), previousToken);
+}
+
+std::string ListUserAuthnSourceMappingsRequest::getUserExternalId() const {
+  return userExternalId_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setUserExternalId(const std::string &userExternalId) {
+  userExternalId_ = userExternalId;
+  setParameter(std::string("UserExternalId"), userExternalId);
+}
+
+std::string ListUserAuthnSourceMappingsRequest::getInstanceId() const {
+  return instanceId_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setInstanceId(const std::string &instanceId) {
+  instanceId_ = instanceId;
+  setParameter(std::string("InstanceId"), instanceId);
+}
+
+int ListUserAuthnSourceMappingsRequest::getMaxResults() const {
+  return maxResults_;
+}
+
+void ListUserAuthnSourceMappingsRequest::setMaxResults(int maxResults) {
+  maxResults_ = maxResults;
+  setParameter(std::string("MaxResults"), std::to_string(maxResults));
+}
+

+ 97 - 0
eiam/src/model/ListUserAuthnSourceMappingsResult.cc

@@ -0,0 +1,97 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/eiam/model/ListUserAuthnSourceMappingsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eiam;
+using namespace AlibabaCloud::Eiam::Model;
+
+ListUserAuthnSourceMappingsResult::ListUserAuthnSourceMappingsResult() :
+	ServiceResult()
+{}
+
+ListUserAuthnSourceMappingsResult::ListUserAuthnSourceMappingsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListUserAuthnSourceMappingsResult::~ListUserAuthnSourceMappingsResult()
+{}
+
+void ListUserAuthnSourceMappingsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allUserAuthnSourceMappingsNode = value["UserAuthnSourceMappings"]["UserAuthnSourceMapping"];
+	for (auto valueUserAuthnSourceMappingsUserAuthnSourceMapping : allUserAuthnSourceMappingsNode)
+	{
+		UserAuthnSourceMapping userAuthnSourceMappingsObject;
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["InstanceId"].isNull())
+			userAuthnSourceMappingsObject.instanceId = valueUserAuthnSourceMappingsUserAuthnSourceMapping["InstanceId"].asString();
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["UserId"].isNull())
+			userAuthnSourceMappingsObject.userId = valueUserAuthnSourceMappingsUserAuthnSourceMapping["UserId"].asString();
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["UserExternalId"].isNull())
+			userAuthnSourceMappingsObject.userExternalId = valueUserAuthnSourceMappingsUserAuthnSourceMapping["UserExternalId"].asString();
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["AuthnSourceType"].isNull())
+			userAuthnSourceMappingsObject.authnSourceType = valueUserAuthnSourceMappingsUserAuthnSourceMapping["AuthnSourceType"].asString();
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["IdentityProviderId"].isNull())
+			userAuthnSourceMappingsObject.identityProviderId = valueUserAuthnSourceMappingsUserAuthnSourceMapping["IdentityProviderId"].asString();
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["CreateTime"].isNull())
+			userAuthnSourceMappingsObject.createTime = std::stol(valueUserAuthnSourceMappingsUserAuthnSourceMapping["CreateTime"].asString());
+		if(!valueUserAuthnSourceMappingsUserAuthnSourceMapping["UpdateTime"].isNull())
+			userAuthnSourceMappingsObject.updateTime = std::stol(valueUserAuthnSourceMappingsUserAuthnSourceMapping["UpdateTime"].asString());
+		userAuthnSourceMappings_.push_back(userAuthnSourceMappingsObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["NextToken"].isNull())
+		nextToken_ = value["NextToken"].asString();
+	if(!value["PreviousToken"].isNull())
+		previousToken_ = value["PreviousToken"].asString();
+	if(!value["MaxResults"].isNull())
+		maxResults_ = std::stoi(value["MaxResults"].asString());
+
+}
+
+int ListUserAuthnSourceMappingsResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+std::string ListUserAuthnSourceMappingsResult::getPreviousToken()const
+{
+	return previousToken_;
+}
+
+std::string ListUserAuthnSourceMappingsResult::getNextToken()const
+{
+	return nextToken_;
+}
+
+std::vector<ListUserAuthnSourceMappingsResult::UserAuthnSourceMapping> ListUserAuthnSourceMappingsResult::getUserAuthnSourceMappings()const
+{
+	return userAuthnSourceMappings_;
+}
+
+int ListUserAuthnSourceMappingsResult::getMaxResults()const
+{
+	return maxResults_;
+}
+

+ 63 - 0
eiam/src/model/UnbindUserAuthnSourceMappingRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/eiam/model/UnbindUserAuthnSourceMappingRequest.h>
+
+using AlibabaCloud::Eiam::Model::UnbindUserAuthnSourceMappingRequest;
+
+UnbindUserAuthnSourceMappingRequest::UnbindUserAuthnSourceMappingRequest()
+    : RpcServiceRequest("eiam", "2021-12-01", "UnbindUserAuthnSourceMapping") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UnbindUserAuthnSourceMappingRequest::~UnbindUserAuthnSourceMappingRequest() {}
+
+std::string UnbindUserAuthnSourceMappingRequest::getUserId() const {
+  return userId_;
+}
+
+void UnbindUserAuthnSourceMappingRequest::setUserId(const std::string &userId) {
+  userId_ = userId;
+  setParameter(std::string("UserId"), userId);
+}
+
+std::string UnbindUserAuthnSourceMappingRequest::getIdentityProviderId() const {
+  return identityProviderId_;
+}
+
+void UnbindUserAuthnSourceMappingRequest::setIdentityProviderId(const std::string &identityProviderId) {
+  identityProviderId_ = identityProviderId;
+  setParameter(std::string("IdentityProviderId"), identityProviderId);
+}
+
+std::string UnbindUserAuthnSourceMappingRequest::getUserExternalId() const {
+  return userExternalId_;
+}
+
+void UnbindUserAuthnSourceMappingRequest::setUserExternalId(const std::string &userExternalId) {
+  userExternalId_ = userExternalId;
+  setParameter(std::string("UserExternalId"), userExternalId);
+}
+
+std::string UnbindUserAuthnSourceMappingRequest::getInstanceId() const {
+  return instanceId_;
+}
+
+void UnbindUserAuthnSourceMappingRequest::setInstanceId(const std::string &instanceId) {
+  instanceId_ = instanceId;
+  setParameter(std::string("InstanceId"), instanceId);
+}
+

+ 44 - 0
eiam/src/model/UnbindUserAuthnSourceMappingResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/eiam/model/UnbindUserAuthnSourceMappingResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eiam;
+using namespace AlibabaCloud::Eiam::Model;
+
+UnbindUserAuthnSourceMappingResult::UnbindUserAuthnSourceMappingResult() :
+	ServiceResult()
+{}
+
+UnbindUserAuthnSourceMappingResult::UnbindUserAuthnSourceMappingResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UnbindUserAuthnSourceMappingResult::~UnbindUserAuthnSourceMappingResult()
+{}
+
+void UnbindUserAuthnSourceMappingResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+