Microsoft Graph: как отключить «Показать в глобальном списке адресов» для нового пользователя - PullRequest
0 голосов
/ 23 января 2019

Я создаю нового пользователя с помощью Microsoft graph

https://docs.microsoft.com/en-us/graph/api/user-post-users?view=graph-rest-1.0

работает нормально. Но я хочу, чтобы пользователь не был в глобальном списке адресов, я хочу отключить эту функцию для созданного пользователя:

enter image description here

Смотрю документацию, ни одна такая опция в User объекте, не нашла для Contact объекта. Любой способ установить «Показать в глобальном списке адресов» = false, используя Graph API (по умолчанию это true для созданного пользователя)?

Ответы [ 3 ]

0 голосов
/ 23 января 2019

Я реализовал это кстати (используя Microsoft.Graph пакет nuget:

public class UserEx : User
{
    [JsonProperty(PropertyName ="showInAddressList")]
    public bool ShowInAddressList { get; set; }
}

затем передайте этот объект GraphClient:

user.ShowInAddressList = false;
userResult = await _graphClient.Users.Request().AddAsync(user);

в результате после регистрации:

enter image description here

спасибо за Джереми Тейка MSFT!

0 голосов
/ 15 марта 2019

Люди,

Свойство, указывающее, где показывать пользователя в глобальном списке адресов , присутствует и доступно в версии 1.0. Это свойство showInAddressList ресурса user. См https://docs.microsoft.com/en-us/graph/api/resources/user?view=graph-rest-1.0#properties

showInAddressList Boolean

Значение true, если глобальный список адресов Outlook должен содержать этого пользователя, в противном случае - значение false. Если не установлено, это будет рассматриваться как истина. Для пользователей, приглашенных через менеджер приглашений, для этого свойства будет установлено значение false.

Надеюсь, это поможет,

0 голосов
/ 23 января 2019

Не все настройки для пользователя отображаются в пользовательском объекте в Microsoft Graph. https://docs.microsoft.com/en-us/graph/api/resources/user?view=graph-rest-1.0

Иногда полезно перейти к CDSL-определению MIcrosoft Graph, используя https://developer.microsoft.com/en-us/graph/graph-explorer?request=$metadata&method=GET&version=v1.0&GraphUrl= https://graph.microsoft.com

Вы увидите этот тип сущности

<EntityType Name="user" BaseType="microsoft.graph.directoryObject" OpenType="true">
        <Property Name="accountEnabled" Type="Edm.Boolean" />
        <Property Name="ageGroup" Type="Edm.String" />
        <Property Name="assignedLicenses" Type="Collection(microsoft.graph.assignedLicense)" Nullable="false" />
        <Property Name="assignedPlans" Type="Collection(microsoft.graph.assignedPlan)" Nullable="false" />
        <Property Name="businessPhones" Type="Collection(Edm.String)" Nullable="false" />
        <Property Name="city" Type="Edm.String" />
        <Property Name="companyName" Type="Edm.String" />
        <Property Name="consentProvidedForMinor" Type="Edm.String" />
        <Property Name="country" Type="Edm.String" />
        <Property Name="department" Type="Edm.String" />
        <Property Name="displayName" Type="Edm.String" />
        <Property Name="employeeId" Type="Edm.String" />
        <Property Name="faxNumber" Type="Edm.String" />
        <Property Name="givenName" Type="Edm.String" />
        <Property Name="imAddresses" Type="Collection(Edm.String)" />
        <Property Name="jobTitle" Type="Edm.String" />
        <Property Name="legalAgeGroupClassification" Type="Edm.String" />
        <Property Name="licenseAssignmentStates" Type="Collection(microsoft.graph.licenseAssignmentState)" />
        <Property Name="mail" Type="Edm.String" />
        <Property Name="mailNickname" Type="Edm.String" />
        <Property Name="mobilePhone" Type="Edm.String" />
        <Property Name="onPremisesDistinguishedName" Type="Edm.String" />
        <Property Name="onPremisesExtensionAttributes" Type="microsoft.graph.onPremisesExtensionAttributes" />
        <Property Name="onPremisesImmutableId" Type="Edm.String" />
        <Property Name="onPremisesLastSyncDateTime" Type="Edm.DateTimeOffset" />
        <Property Name="onPremisesProvisioningErrors" Type="Collection(microsoft.graph.onPremisesProvisioningError)" />
        <Property Name="onPremisesSecurityIdentifier" Type="Edm.String" />
        <Property Name="onPremisesSyncEnabled" Type="Edm.Boolean" />
        <Property Name="onPremisesDomainName" Type="Edm.String" />
        <Property Name="onPremisesSamAccountName" Type="Edm.String" />
        <Property Name="onPremisesUserPrincipalName" Type="Edm.String" />
        <Property Name="otherMails" Type="Collection(Edm.String)" Nullable="false" />
        <Property Name="passwordPolicies" Type="Edm.String" />
        <Property Name="passwordProfile" Type="microsoft.graph.passwordProfile" />
        <Property Name="officeLocation" Type="Edm.String" />
        <Property Name="postalCode" Type="Edm.String" />
        <Property Name="preferredLanguage" Type="Edm.String" />
        <Property Name="provisionedPlans" Type="Collection(microsoft.graph.provisionedPlan)" Nullable="false" />
        <Property Name="proxyAddresses" Type="Collection(Edm.String)" Nullable="false" />
        <Property Name="showInAddressList" Type="Edm.Boolean" />
        <Property Name="state" Type="Edm.String" />
        <Property Name="streetAddress" Type="Edm.String" />
        <Property Name="surname" Type="Edm.String" />
        <Property Name="usageLocation" Type="Edm.String" />
        <Property Name="userPrincipalName" Type="Edm.String" />
        <Property Name="userType" Type="Edm.String" />
        <Property Name="mailboxSettings" Type="microsoft.graph.mailboxSettings" />
        <Property Name="aboutMe" Type="Edm.String" />
        <Property Name="birthday" Type="Edm.DateTimeOffset" Nullable="false" />
        <Property Name="hireDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <Property Name="interests" Type="Collection(Edm.String)" />
        <Property Name="mySite" Type="Edm.String" />
        <Property Name="pastProjects" Type="Collection(Edm.String)" />
        <Property Name="preferredName" Type="Edm.String" />
        <Property Name="responsibilities" Type="Collection(Edm.String)" />
        <Property Name="schools" Type="Collection(Edm.String)" />
        <Property Name="skills" Type="Collection(Edm.String)" />
        <Property Name="deviceEnrollmentLimit" Type="Edm.Int32" Nullable="false" />
        <NavigationProperty Name="ownedDevices" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="registeredDevices" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="manager" Type="microsoft.graph.directoryObject" />
        <NavigationProperty Name="directReports" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="memberOf" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="createdObjects" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="ownedObjects" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="licenseDetails" Type="Collection(microsoft.graph.licenseDetails)" ContainsTarget="true" />
        <NavigationProperty Name="transitiveMemberOf" Type="Collection(microsoft.graph.directoryObject)" />
        <NavigationProperty Name="extensions" Type="Collection(microsoft.graph.extension)" ContainsTarget="true" />
        <NavigationProperty Name="outlook" Type="microsoft.graph.outlookUser" ContainsTarget="true" />
        <NavigationProperty Name="messages" Type="Collection(microsoft.graph.message)" ContainsTarget="true" />
        <NavigationProperty Name="mailFolders" Type="Collection(microsoft.graph.mailFolder)" ContainsTarget="true" />
        <NavigationProperty Name="calendar" Type="microsoft.graph.calendar" ContainsTarget="true" />
        <NavigationProperty Name="calendars" Type="Collection(microsoft.graph.calendar)" ContainsTarget="true" />
        <NavigationProperty Name="calendarGroups" Type="Collection(microsoft.graph.calendarGroup)" ContainsTarget="true" />
        <NavigationProperty Name="calendarView" Type="Collection(microsoft.graph.event)" ContainsTarget="true" />
        <NavigationProperty Name="events" Type="Collection(microsoft.graph.event)" ContainsTarget="true" />
        <NavigationProperty Name="people" Type="Collection(microsoft.graph.person)" ContainsTarget="true" />
        <NavigationProperty Name="contacts" Type="Collection(microsoft.graph.contact)" ContainsTarget="true" />
        <NavigationProperty Name="contactFolders" Type="Collection(microsoft.graph.contactFolder)" ContainsTarget="true" />
        <NavigationProperty Name="inferenceClassification" Type="microsoft.graph.inferenceClassification" ContainsTarget="true" />
        <NavigationProperty Name="photo" Type="microsoft.graph.profilePhoto" ContainsTarget="true" />
        <NavigationProperty Name="photos" Type="Collection(microsoft.graph.profilePhoto)" ContainsTarget="true" />
        <NavigationProperty Name="drive" Type="microsoft.graph.drive" ContainsTarget="true" />
        <NavigationProperty Name="drives" Type="Collection(microsoft.graph.drive)" ContainsTarget="true" />
        <NavigationProperty Name="planner" Type="microsoft.graph.plannerUser" ContainsTarget="true" />
        <NavigationProperty Name="onenote" Type="microsoft.graph.onenote" ContainsTarget="true" />
        <NavigationProperty Name="managedDevices" Type="Collection(microsoft.graph.managedDevice)" ContainsTarget="true" />
        <NavigationProperty Name="managedAppRegistrations" Type="Collection(microsoft.graph.managedAppRegistration)" />
        <NavigationProperty Name="deviceManagementTroubleshootingEvents" Type="Collection(microsoft.graph.deviceManagementTroubleshootingEvent)" ContainsTarget="true" />
        <NavigationProperty Name="activities" Type="Collection(microsoft.graph.userActivity)" ContainsTarget="true" />
        <NavigationProperty Name="insights" Type="microsoft.graph.officeGraphInsights" ContainsTarget="true" />
        <NavigationProperty Name="settings" Type="microsoft.graph.userSettings" ContainsTarget="true" />
        <NavigationProperty Name="joinedTeams" Type="Collection(microsoft.graph.group)" ContainsTarget="true" />
      </EntityType>

В документации перечислены все из них. К сожалению, здесь, похоже, нет глобальной адресной книги. Если это то, что вы хотели бы увидеть на графике Microsoft. Вы можете запросить его в качестве запроса функции продукта на User Voice согласно https://developer.microsoft.com/en-us/graph/support

...