This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
pxz-hos-client-cpp-module/support/aws-sdk-cpp-master/aws-cpp-sdk-macie2/include/aws/macie2/model/UserIdentity.h

350 lines
13 KiB
C++

/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/macie2/Macie2_EXPORTS.h>
#include <aws/macie2/model/AssumedRole.h>
#include <aws/macie2/model/AwsAccount.h>
#include <aws/macie2/model/AwsService.h>
#include <aws/macie2/model/FederatedUser.h>
#include <aws/macie2/model/IamUser.h>
#include <aws/macie2/model/UserIdentityRoot.h>
#include <aws/macie2/model/UserIdentityType.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace Macie2
{
namespace Model
{
/**
* <p>Provides information about the type and other characteristics of an entity
* that performed an action on an affected resource.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/macie2-2020-01-01/UserIdentity">AWS
* API Reference</a></p>
*/
class AWS_MACIE2_API UserIdentity
{
public:
UserIdentity();
UserIdentity(Aws::Utils::Json::JsonView jsonValue);
UserIdentity& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the AssumeRole operation of the AWS Security Token Service (AWS
* STS) API, the identifiers, session context, and other details about the
* identity.</p>
*/
inline const AssumedRole& GetAssumedRole() const{ return m_assumedRole; }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the AssumeRole operation of the AWS Security Token Service (AWS
* STS) API, the identifiers, session context, and other details about the
* identity.</p>
*/
inline bool AssumedRoleHasBeenSet() const { return m_assumedRoleHasBeenSet; }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the AssumeRole operation of the AWS Security Token Service (AWS
* STS) API, the identifiers, session context, and other details about the
* identity.</p>
*/
inline void SetAssumedRole(const AssumedRole& value) { m_assumedRoleHasBeenSet = true; m_assumedRole = value; }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the AssumeRole operation of the AWS Security Token Service (AWS
* STS) API, the identifiers, session context, and other details about the
* identity.</p>
*/
inline void SetAssumedRole(AssumedRole&& value) { m_assumedRoleHasBeenSet = true; m_assumedRole = std::move(value); }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the AssumeRole operation of the AWS Security Token Service (AWS
* STS) API, the identifiers, session context, and other details about the
* identity.</p>
*/
inline UserIdentity& WithAssumedRole(const AssumedRole& value) { SetAssumedRole(value); return *this;}
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the AssumeRole operation of the AWS Security Token Service (AWS
* STS) API, the identifiers, session context, and other details about the
* identity.</p>
*/
inline UserIdentity& WithAssumedRole(AssumedRole&& value) { SetAssumedRole(std::move(value)); return *this;}
/**
* <p>If the action was performed using the credentials for another AWS account,
* the details of that account.</p>
*/
inline const AwsAccount& GetAwsAccount() const{ return m_awsAccount; }
/**
* <p>If the action was performed using the credentials for another AWS account,
* the details of that account.</p>
*/
inline bool AwsAccountHasBeenSet() const { return m_awsAccountHasBeenSet; }
/**
* <p>If the action was performed using the credentials for another AWS account,
* the details of that account.</p>
*/
inline void SetAwsAccount(const AwsAccount& value) { m_awsAccountHasBeenSet = true; m_awsAccount = value; }
/**
* <p>If the action was performed using the credentials for another AWS account,
* the details of that account.</p>
*/
inline void SetAwsAccount(AwsAccount&& value) { m_awsAccountHasBeenSet = true; m_awsAccount = std::move(value); }
/**
* <p>If the action was performed using the credentials for another AWS account,
* the details of that account.</p>
*/
inline UserIdentity& WithAwsAccount(const AwsAccount& value) { SetAwsAccount(value); return *this;}
/**
* <p>If the action was performed using the credentials for another AWS account,
* the details of that account.</p>
*/
inline UserIdentity& WithAwsAccount(AwsAccount&& value) { SetAwsAccount(std::move(value)); return *this;}
/**
* <p>If the action was performed by an AWS account that belongs to an AWS service,
* the name of the service.</p>
*/
inline const AwsService& GetAwsService() const{ return m_awsService; }
/**
* <p>If the action was performed by an AWS account that belongs to an AWS service,
* the name of the service.</p>
*/
inline bool AwsServiceHasBeenSet() const { return m_awsServiceHasBeenSet; }
/**
* <p>If the action was performed by an AWS account that belongs to an AWS service,
* the name of the service.</p>
*/
inline void SetAwsService(const AwsService& value) { m_awsServiceHasBeenSet = true; m_awsService = value; }
/**
* <p>If the action was performed by an AWS account that belongs to an AWS service,
* the name of the service.</p>
*/
inline void SetAwsService(AwsService&& value) { m_awsServiceHasBeenSet = true; m_awsService = std::move(value); }
/**
* <p>If the action was performed by an AWS account that belongs to an AWS service,
* the name of the service.</p>
*/
inline UserIdentity& WithAwsService(const AwsService& value) { SetAwsService(value); return *this;}
/**
* <p>If the action was performed by an AWS account that belongs to an AWS service,
* the name of the service.</p>
*/
inline UserIdentity& WithAwsService(AwsService&& value) { SetAwsService(std::move(value)); return *this;}
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the GetFederationToken operation of the AWS Security Token
* Service (AWS STS) API, the identifiers, session context, and other details about
* the identity.</p>
*/
inline const FederatedUser& GetFederatedUser() const{ return m_federatedUser; }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the GetFederationToken operation of the AWS Security Token
* Service (AWS STS) API, the identifiers, session context, and other details about
* the identity.</p>
*/
inline bool FederatedUserHasBeenSet() const { return m_federatedUserHasBeenSet; }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the GetFederationToken operation of the AWS Security Token
* Service (AWS STS) API, the identifiers, session context, and other details about
* the identity.</p>
*/
inline void SetFederatedUser(const FederatedUser& value) { m_federatedUserHasBeenSet = true; m_federatedUser = value; }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the GetFederationToken operation of the AWS Security Token
* Service (AWS STS) API, the identifiers, session context, and other details about
* the identity.</p>
*/
inline void SetFederatedUser(FederatedUser&& value) { m_federatedUserHasBeenSet = true; m_federatedUser = std::move(value); }
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the GetFederationToken operation of the AWS Security Token
* Service (AWS STS) API, the identifiers, session context, and other details about
* the identity.</p>
*/
inline UserIdentity& WithFederatedUser(const FederatedUser& value) { SetFederatedUser(value); return *this;}
/**
* <p>If the action was performed with temporary security credentials that were
* obtained using the GetFederationToken operation of the AWS Security Token
* Service (AWS STS) API, the identifiers, session context, and other details about
* the identity.</p>
*/
inline UserIdentity& WithFederatedUser(FederatedUser&& value) { SetFederatedUser(std::move(value)); return *this;}
/**
* <p>If the action was performed using the credentials for an AWS Identity and
* Access Management (IAM) user, the name and other details about the user.</p>
*/
inline const IamUser& GetIamUser() const{ return m_iamUser; }
/**
* <p>If the action was performed using the credentials for an AWS Identity and
* Access Management (IAM) user, the name and other details about the user.</p>
*/
inline bool IamUserHasBeenSet() const { return m_iamUserHasBeenSet; }
/**
* <p>If the action was performed using the credentials for an AWS Identity and
* Access Management (IAM) user, the name and other details about the user.</p>
*/
inline void SetIamUser(const IamUser& value) { m_iamUserHasBeenSet = true; m_iamUser = value; }
/**
* <p>If the action was performed using the credentials for an AWS Identity and
* Access Management (IAM) user, the name and other details about the user.</p>
*/
inline void SetIamUser(IamUser&& value) { m_iamUserHasBeenSet = true; m_iamUser = std::move(value); }
/**
* <p>If the action was performed using the credentials for an AWS Identity and
* Access Management (IAM) user, the name and other details about the user.</p>
*/
inline UserIdentity& WithIamUser(const IamUser& value) { SetIamUser(value); return *this;}
/**
* <p>If the action was performed using the credentials for an AWS Identity and
* Access Management (IAM) user, the name and other details about the user.</p>
*/
inline UserIdentity& WithIamUser(IamUser&& value) { SetIamUser(std::move(value)); return *this;}
/**
* <p>If the action was performed using the credentials for your AWS account, the
* details of your account.</p>
*/
inline const UserIdentityRoot& GetRoot() const{ return m_root; }
/**
* <p>If the action was performed using the credentials for your AWS account, the
* details of your account.</p>
*/
inline bool RootHasBeenSet() const { return m_rootHasBeenSet; }
/**
* <p>If the action was performed using the credentials for your AWS account, the
* details of your account.</p>
*/
inline void SetRoot(const UserIdentityRoot& value) { m_rootHasBeenSet = true; m_root = value; }
/**
* <p>If the action was performed using the credentials for your AWS account, the
* details of your account.</p>
*/
inline void SetRoot(UserIdentityRoot&& value) { m_rootHasBeenSet = true; m_root = std::move(value); }
/**
* <p>If the action was performed using the credentials for your AWS account, the
* details of your account.</p>
*/
inline UserIdentity& WithRoot(const UserIdentityRoot& value) { SetRoot(value); return *this;}
/**
* <p>If the action was performed using the credentials for your AWS account, the
* details of your account.</p>
*/
inline UserIdentity& WithRoot(UserIdentityRoot&& value) { SetRoot(std::move(value)); return *this;}
/**
* <p>The type of entity that performed the action.</p>
*/
inline const UserIdentityType& GetType() const{ return m_type; }
/**
* <p>The type of entity that performed the action.</p>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>The type of entity that performed the action.</p>
*/
inline void SetType(const UserIdentityType& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>The type of entity that performed the action.</p>
*/
inline void SetType(UserIdentityType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>The type of entity that performed the action.</p>
*/
inline UserIdentity& WithType(const UserIdentityType& value) { SetType(value); return *this;}
/**
* <p>The type of entity that performed the action.</p>
*/
inline UserIdentity& WithType(UserIdentityType&& value) { SetType(std::move(value)); return *this;}
private:
AssumedRole m_assumedRole;
bool m_assumedRoleHasBeenSet;
AwsAccount m_awsAccount;
bool m_awsAccountHasBeenSet;
AwsService m_awsService;
bool m_awsServiceHasBeenSet;
FederatedUser m_federatedUser;
bool m_federatedUserHasBeenSet;
IamUser m_iamUser;
bool m_iamUserHasBeenSet;
UserIdentityRoot m_root;
bool m_rootHasBeenSet;
UserIdentityType m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace Macie2
} // namespace Aws