/*
* Copyright 2010-2014 Amazon.com, Inc. or its affiliates. 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.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file 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.
*/
/*
* Do not modify this file. This file is generated from the iam-2010-05-08.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.IdentityManagement.Model
{
///
/// Contains details about the most recent attempt to access the service.
///
///
///
/// This data type is used as a response element in the GetServiceLastAccessedDetails
/// operation.
///
///
public partial class ServiceLastAccessed
{
private DateTime? _lastAuthenticated;
private string _lastAuthenticatedEntity;
private string _serviceName;
private string _serviceNamespace;
private int? _totalAuthenticatedEntities;
///
/// Gets and sets the property LastAuthenticated.
///
/// The date and time, in ISO 8601 date-time
/// format, when an authenticated entity most recently attempted to access the service.
/// AWS does not report unauthenticated requests.
///
///
///
/// This field is null if no IAM entities attempted to access the service within the reporting
/// period.
///
///
public DateTime LastAuthenticated
{
get { return this._lastAuthenticated.GetValueOrDefault(); }
set { this._lastAuthenticated = value; }
}
// Check to see if LastAuthenticated property is set
internal bool IsSetLastAuthenticated()
{
return this._lastAuthenticated.HasValue;
}
///
/// Gets and sets the property LastAuthenticatedEntity.
///
/// The ARN of the authenticated entity (user or role) that last attempted to access the
/// service. AWS does not report unauthenticated requests.
///
///
///
/// This field is null if no IAM entities attempted to access the service within the reporting
/// period.
///
///
[AWSProperty(Min=20, Max=2048)]
public string LastAuthenticatedEntity
{
get { return this._lastAuthenticatedEntity; }
set { this._lastAuthenticatedEntity = value; }
}
// Check to see if LastAuthenticatedEntity property is set
internal bool IsSetLastAuthenticatedEntity()
{
return this._lastAuthenticatedEntity != null;
}
///
/// Gets and sets the property ServiceName.
///
/// The name of the service in which access was attempted.
///
///
[AWSProperty(Required=true)]
public string ServiceName
{
get { return this._serviceName; }
set { this._serviceName = value; }
}
// Check to see if ServiceName property is set
internal bool IsSetServiceName()
{
return this._serviceName != null;
}
///
/// Gets and sets the property ServiceNamespace.
///
/// The namespace of the service in which access was attempted.
///
///
///
/// To learn the service namespace of a service, go to Actions,
/// Resources, and Condition Keys for AWS Services in the IAM User Guide. Choose
/// the name of the service to view details for that service. In the first paragraph,
/// find the service prefix. For example, (service prefix: a4b)
. For more
/// information about service namespaces, see AWS
/// Service Namespaces in the AWS General Reference.
///
///
[AWSProperty(Required=true, Min=1, Max=64)]
public string ServiceNamespace
{
get { return this._serviceNamespace; }
set { this._serviceNamespace = value; }
}
// Check to see if ServiceNamespace property is set
internal bool IsSetServiceNamespace()
{
return this._serviceNamespace != null;
}
///
/// Gets and sets the property TotalAuthenticatedEntities.
///
/// The total number of authenticated principals (root user, IAM users, or IAM roles)
/// that have attempted to access the service.
///
///
///
/// This field is null if no principals attempted to access the service within the reporting
/// period.
///
///
public int TotalAuthenticatedEntities
{
get { return this._totalAuthenticatedEntities.GetValueOrDefault(); }
set { this._totalAuthenticatedEntities = value; }
}
// Check to see if TotalAuthenticatedEntities property is set
internal bool IsSetTotalAuthenticatedEntities()
{
return this._totalAuthenticatedEntities.HasValue;
}
}
}