Show / Hide Table of Contents

Class User

An individual employee or system that needs to manage or use your company's Oracle Cloud Infrastructure resources. Users might need to launch instances, manage remote disks, work with your cloud network, etc. Users have one or more IAM Service credentials ({@link ApiKey}, {@link UIPassword}, {@link SwiftPassword} and {@link AuthToken}). For more information, see User Credentials). End users of your application are not typically IAM Service users, but for tenancies that have identity domains, they might be. For conceptual information about users and other IAM Service components, see Overview of IAM.
These users are created directly within the Oracle Cloud Infrastructure system, via the IAM service. They are different from federated users, who authenticate themselves to the Oracle Cloud Infrastructure Console via an identity provider. For more information, see Identity Providers and Federation.
To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized, talk to an administrator. If you're an administrator who needs to write policies to give users access, see Get Started with Policies.
Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Inheritance
object
User
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Oci.IdentityService.Models
Assembly: OCI.DotNetSDK.Identity.dll
Syntax
public class User

Properties

Capabilities

Declaration
[JsonProperty(PropertyName = "capabilities")]
public UserCapabilities Capabilities { get; set; }
Property Value
Type Description
UserCapabilities

CompartmentId

Declaration
[Required(ErrorMessage = "CompartmentId is required.")]
[JsonProperty(PropertyName = "compartmentId")]
public string CompartmentId { get; set; }
Property Value
Type Description
string

The OCID of the tenancy containing the user.

Remarks

Required

DbUserName

Declaration
[JsonProperty(PropertyName = "dbUserName")]
public string DbUserName { get; set; }
Property Value
Type Description
string

DB username of the DB credential. Has to be unique across the tenancy.

DefinedTags

Declaration
[JsonProperty(PropertyName = "definedTags")]
public Dictionary<string, Dictionary<string, object>> DefinedTags { get; set; }
Property Value
Type Description
Dictionary<string, Dictionary<string, object>>

Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations": {"CostCenter": "42"}}

Description

Declaration
[Required(ErrorMessage = "Description is required.")]
[JsonProperty(PropertyName = "description")]
public string Description { get; set; }
Property Value
Type Description
string

The description you assign to the user. Does not have to be unique, and it's changeable.
(For tenancies that support identity domains) You can have an empty description.

Remarks

Required

Email

Declaration
[JsonProperty(PropertyName = "email")]
public string Email { get; set; }
Property Value
Type Description
string

The email address you assign to the user. The email address must be unique across all users in the tenancy.
(For tenancies that support identity domains) The email address is required unless the requirement is disabled at the tenancy level.

EmailVerified

Declaration
[JsonProperty(PropertyName = "emailVerified")]
public bool? EmailVerified { get; set; }
Property Value
Type Description
bool?

Whether the email address has been validated.

ExternalIdentifier

Declaration
[JsonProperty(PropertyName = "externalIdentifier")]
public string ExternalIdentifier { get; set; }
Property Value
Type Description
string

Identifier of the user in the identity provider

FreeformTags

Declaration
[JsonProperty(PropertyName = "freeformTags")]
public Dictionary<string, string> FreeformTags { get; set; }
Property Value
Type Description
Dictionary<string, string>

Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags.
Example: {"Department": "Finance"}

Id

Declaration
[Required(ErrorMessage = "Id is required.")]
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type Description
string

The OCID of the user.

Remarks

Required

IdentityProviderId

Declaration
[JsonProperty(PropertyName = "identityProviderId")]
public string IdentityProviderId { get; set; }
Property Value
Type Description
string

The OCID of the IdentityProvider this user belongs to.

InactiveStatus

Declaration
[JsonProperty(PropertyName = "inactiveStatus")]
public long? InactiveStatus { get; set; }
Property Value
Type Description
long?

Returned only if the user's lifecycleState is INACTIVE. A 16-bit value showing the reason why the user is inactive:

  • bit 0: SUSPENDED (reserved for future use)
  • bit 1: DISABLED (reserved for future use)
  • bit 2: BLOCKED (the user has exceeded the maximum number of failed login attempts for the Console)

IsMfaActivated

Declaration
[Required(ErrorMessage = "IsMfaActivated is required.")]
[JsonProperty(PropertyName = "isMfaActivated")]
public bool? IsMfaActivated { get; set; }
Property Value
Type Description
bool?

Flag indicates if MFA has been activated for the user.

Remarks

Required

LastSuccessfulLoginTime

Declaration
[JsonProperty(PropertyName = "lastSuccessfulLoginTime")]
public DateTime? LastSuccessfulLoginTime { get; set; }
Property Value
Type Description
DateTime?

The date and time of when the user most recently logged in the format defined by RFC3339 (ex. 2016-08-25T21:10:29.600Z). If there is no login history, this field is null.
For illustrative purposes, suppose we have a user who has logged in at July 1st, 2020 at 1200 PST and logged out 30 minutes later. They then login again on July 2nd, 2020 at 1500 PST.
Their previousSuccessfulLoginTime would be 2020-07-01:19:00.000Z.
Their lastSuccessfulLoginTime would be 2020-07-02:22:00.000Z.

LifecycleState

Declaration
[Required(ErrorMessage = "LifecycleState is required.")]
[JsonProperty(PropertyName = "lifecycleState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public User.LifecycleStateEnum? LifecycleState { get; set; }
Property Value
Type Description
User.LifecycleStateEnum?

The user's current state. After creating a user, make sure its lifecycleState changes from CREATING to ACTIVE before using it.

Remarks

Required

Name

Declaration
[Required(ErrorMessage = "Name is required.")]
[JsonProperty(PropertyName = "name")]
public string Name { get; set; }
Property Value
Type Description
string

The name you assign to the user during creation. This is the user's login for the Console. The name must be unique across all users in the tenancy and cannot be changed.

Remarks

Required

PreviousSuccessfulLoginTime

Declaration
[JsonProperty(PropertyName = "previousSuccessfulLoginTime")]
public DateTime? PreviousSuccessfulLoginTime { get; set; }
Property Value
Type Description
DateTime?

The date and time of when the user most recently logged in the format defined by RFC3339 (ex. 2016-08-25T21:10:29.600Z). If there is no login history, this field is null.
For illustrative purposes, suppose we have a user who has logged in at July 1st, 2020 at 1200 PST and logged out 30 minutes later. They then login again on July 2nd, 2020 at 1500 PST.
Their previousSuccessfulLoginTime would be 2020-07-01:19:00.000Z.
Their lastSuccessfulLoginTime would be 2020-07-02:22:00.000Z.

TimeCreated

Declaration
[Required(ErrorMessage = "TimeCreated is required.")]
[JsonProperty(PropertyName = "timeCreated")]
public DateTime? TimeCreated { get; set; }
Property Value
Type Description
DateTime?

Date and time the user was created, in the format defined by RFC3339.
Example: 2016-08-25T21:10:29.600Z

Remarks

Required

In this article
Back to top