Implement GetPersonUsersInGroup
This commit is contained in:
@@ -97,6 +97,23 @@ namespace VMware.vSphere.SsoAdminClient.Tests
|
|||||||
Assert.AreEqual("localos", actual[0].Domain);
|
Assert.AreEqual("localos", actual[0].Domain);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void GetPersonUsersInGroup() {
|
||||||
|
// Arrange
|
||||||
|
var ssoAdminClient = new SsoAdminClient(_vc, _user, _password, new AcceptAllX509CertificateValidator());
|
||||||
|
|
||||||
|
// Act
|
||||||
|
var actual = ssoAdminClient.GetPersonUsersInGroup("", new Group {
|
||||||
|
Name = "Administrators",
|
||||||
|
Domain = "vsphere.local"
|
||||||
|
}).ToArray();
|
||||||
|
|
||||||
|
// Assert
|
||||||
|
Assert.NotNull(actual);
|
||||||
|
Assert.GreaterOrEqual(actual.Length, 1);
|
||||||
|
Assert.AreEqual("vsphere.local", actual[0].Domain);
|
||||||
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void AddRemoveUserFromGroup() {
|
public void AddRemoveUserFromGroup() {
|
||||||
// Arrange
|
// Arrange
|
||||||
|
|||||||
@@ -229,6 +229,40 @@ namespace VMware.vSphere.SsoAdminClient
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public IEnumerable<PersonUser> GetPersonUsersInGroup(string searchString, DataTypes.Group group) {
|
||||||
|
// Create Authorization Invocation Context
|
||||||
|
var authorizedInvocationContext =
|
||||||
|
CreateAuthorizedInvocationContext();
|
||||||
|
|
||||||
|
// Invoke SSO Admin FindPersonUsersAsync operation
|
||||||
|
var personUsers = authorizedInvocationContext.
|
||||||
|
InvokeOperation(() =>
|
||||||
|
_ssoAdminBindingClient.FindPersonUsersInGroupAsync(
|
||||||
|
new ManagedObjectReference {
|
||||||
|
type = "SsoAdminPrincipalDiscoveryService",
|
||||||
|
Value = "principalDiscoveryService"
|
||||||
|
},
|
||||||
|
new SsoPrincipalId {
|
||||||
|
name = group.Name,
|
||||||
|
domain = group.Domain
|
||||||
|
},
|
||||||
|
searchString,
|
||||||
|
int.MaxValue)).Result.returnval;
|
||||||
|
|
||||||
|
if (personUsers != null) {
|
||||||
|
foreach (var personUser in personUsers) {
|
||||||
|
yield return new PersonUser(this) {
|
||||||
|
Name = personUser.id.name,
|
||||||
|
Domain = personUser.id.domain,
|
||||||
|
Description = personUser.details.description,
|
||||||
|
FirstName = personUser.details.firstName,
|
||||||
|
LastName = personUser.details.lastName,
|
||||||
|
EmailAddress = personUser.details.emailAddress
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void DeleteLocalUser(
|
public void DeleteLocalUser(
|
||||||
PersonUser principal) {
|
PersonUser principal) {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user