Signed-off-by: Dimitar Milov <dmilov@vmware.com>
This commit is contained in:
@@ -16,7 +16,7 @@ SPDX-License-Identifier: BSD-2-Clause
|
|||||||
RootModule = 'VMware.vSphere.SsoAdmin.psm1'
|
RootModule = 'VMware.vSphere.SsoAdmin.psm1'
|
||||||
|
|
||||||
# Version number of this module.
|
# Version number of this module.
|
||||||
ModuleVersion = '1.3.0'
|
ModuleVersion = '1.3.1'
|
||||||
|
|
||||||
# ID used to uniquely identify this module
|
# ID used to uniquely identify this module
|
||||||
GUID = 'b3e25326-e809-4d68-a252-ca5fcaf1eb8b'
|
GUID = 'b3e25326-e809-4d68-a252-ca5fcaf1eb8b'
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -26,6 +26,8 @@ namespace VMware.vSphere.SsoAdminClient.DataTypes
|
|||||||
public bool Locked { get; set; }
|
public bool Locked { get; set; }
|
||||||
public bool Disabled { get; set; }
|
public bool Disabled { get; set; }
|
||||||
|
|
||||||
|
public Nullable<int> PasswordExpirationRemainingDays { get; set; }
|
||||||
|
|
||||||
public SsoAdminClient GetClient() {
|
public SsoAdminClient GetClient() {
|
||||||
return _client;
|
return _client;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -207,6 +207,25 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
name = userName,
|
name = userName,
|
||||||
domain = domain
|
domain = domain
|
||||||
})).Result;
|
})).Result;
|
||||||
|
|
||||||
|
Nullable<int> passwordRemainingDays = null;
|
||||||
|
try {
|
||||||
|
passwordRemainingDays = wsSecurityContext.
|
||||||
|
InvokeOperation(() =>
|
||||||
|
_ssoAdminBindingClient.GetDaysRemainingUntilPasswordExpirationAsync(
|
||||||
|
new ManagedObjectReference
|
||||||
|
{
|
||||||
|
type = "SsoAdminPrincipalManagementService",
|
||||||
|
Value = "principalManagementService"
|
||||||
|
},
|
||||||
|
new SsoPrincipalId
|
||||||
|
{
|
||||||
|
name = userName,
|
||||||
|
domain = domain
|
||||||
|
})).Result;
|
||||||
|
} catch {}
|
||||||
|
|
||||||
|
|
||||||
return new PersonUser(this)
|
return new PersonUser(this)
|
||||||
{
|
{
|
||||||
Name = personUser.id.name,
|
Name = personUser.id.name,
|
||||||
@@ -216,7 +235,8 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
LastName = personUser.details.lastName,
|
LastName = personUser.details.lastName,
|
||||||
EmailAddress = personUser.details.emailAddress,
|
EmailAddress = personUser.details.emailAddress,
|
||||||
Locked = personUser.locked,
|
Locked = personUser.locked,
|
||||||
Disabled = personUser.disabled
|
Disabled = personUser.disabled,
|
||||||
|
PasswordExpirationRemainingDays = passwordRemainingDays
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -246,6 +266,18 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
{
|
{
|
||||||
foreach (var personUser in personUsers)
|
foreach (var personUser in personUsers)
|
||||||
{
|
{
|
||||||
|
Nullable<int> passwordRemainingDays = null;
|
||||||
|
try {
|
||||||
|
passwordRemainingDays = authorizedInvocationContext.
|
||||||
|
InvokeOperation(() =>
|
||||||
|
_ssoAdminBindingClient.GetDaysRemainingUntilPasswordExpirationAsync(
|
||||||
|
new ManagedObjectReference
|
||||||
|
{
|
||||||
|
type = "SsoAdminPrincipalManagementService",
|
||||||
|
Value = "principalManagementService"
|
||||||
|
},
|
||||||
|
personUser.id)).Result;
|
||||||
|
} catch {}
|
||||||
yield return new PersonUser(this)
|
yield return new PersonUser(this)
|
||||||
{
|
{
|
||||||
Name = personUser.id.name,
|
Name = personUser.id.name,
|
||||||
@@ -255,7 +287,8 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
LastName = personUser.details.lastName,
|
LastName = personUser.details.lastName,
|
||||||
EmailAddress = personUser.details.emailAddress,
|
EmailAddress = personUser.details.emailAddress,
|
||||||
Locked = personUser.locked,
|
Locked = personUser.locked,
|
||||||
Disabled = personUser.disabled
|
Disabled = personUser.disabled,
|
||||||
|
PasswordExpirationRemainingDays = passwordRemainingDays
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -289,8 +322,21 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
{
|
{
|
||||||
foreach (var personUser in personUsers)
|
foreach (var personUser in personUsers)
|
||||||
{
|
{
|
||||||
yield return new PersonUser(this)
|
Nullable<int> passwordRemainingDays = null;
|
||||||
{
|
try
|
||||||
|
{
|
||||||
|
passwordRemainingDays = authorizedInvocationContext.
|
||||||
|
InvokeOperation(() =>
|
||||||
|
_ssoAdminBindingClient.GetDaysRemainingUntilPasswordExpirationAsync(
|
||||||
|
new ManagedObjectReference
|
||||||
|
{
|
||||||
|
type = "SsoAdminPrincipalManagementService",
|
||||||
|
Value = "principalManagementService"
|
||||||
|
},
|
||||||
|
personUser.id)).Result;
|
||||||
|
} catch {}
|
||||||
|
yield return new PersonUser(this)
|
||||||
|
{
|
||||||
Name = personUser.id.name,
|
Name = personUser.id.name,
|
||||||
Domain = personUser.id.domain,
|
Domain = personUser.id.domain,
|
||||||
Description = personUser.details.description,
|
Description = personUser.details.description,
|
||||||
@@ -298,8 +344,9 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
LastName = personUser.details.lastName,
|
LastName = personUser.details.lastName,
|
||||||
EmailAddress = personUser.details.emailAddress,
|
EmailAddress = personUser.details.emailAddress,
|
||||||
Locked = personUser.locked,
|
Locked = personUser.locked,
|
||||||
Disabled = personUser.disabled
|
Disabled = personUser.disabled,
|
||||||
};
|
PasswordExpirationRemainingDays = passwordRemainingDays
|
||||||
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,6 +101,7 @@ Describe "PersonUser Tests" {
|
|||||||
$actual.FirstName | Should -Be $null
|
$actual.FirstName | Should -Be $null
|
||||||
$actual.LastName | Should -Be $null
|
$actual.LastName | Should -Be $null
|
||||||
$actual.EmailAddress | Should -Be $null
|
$actual.EmailAddress | Should -Be $null
|
||||||
|
$actual.PasswordExpirationRemainingDays | Should -Not -Be $null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -121,6 +122,7 @@ Describe "PersonUser Tests" {
|
|||||||
$actual.Count | Should -BeGreaterThan 0
|
$actual.Count | Should -BeGreaterThan 0
|
||||||
$actual[0].Name | Should -Not -Be $null
|
$actual[0].Name | Should -Not -Be $null
|
||||||
$actual[0].Domain | Should -Be 'localos'
|
$actual[0].Domain | Should -Be 'localos'
|
||||||
|
$actual[0].PasswordExpirationRemainingDays | Should -Not -Be $null
|
||||||
}
|
}
|
||||||
|
|
||||||
It 'Gets person users by name (exact match) and domain filters' {
|
It 'Gets person users by name (exact match) and domain filters' {
|
||||||
@@ -278,6 +280,7 @@ Describe "PersonUser Tests" {
|
|||||||
$actual.Count | Should -BeGreaterThan 0
|
$actual.Count | Should -BeGreaterThan 0
|
||||||
$actual[0].Name | Should -Not -Be $null
|
$actual[0].Name | Should -Not -Be $null
|
||||||
$actual[0].Domain | Should -Be 'vsphere.local'
|
$actual[0].Domain | Should -Be 'vsphere.local'
|
||||||
|
$actual[0].PasswordExpirationRemainingDays | Should -Not -Be $null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user