2 votes

Filtrer les utilisateurs ayant un statut actif et utilisant les mots-clés StartsWith et Contains avec le SDK Okta.

Est-ce que quelqu'un a un exemple en .Net pour rechercher/filtrer un utilisateur en fonction du statut de l'utilisateur (c'est-à-dire Actif) et du Prénom/Nom commençant par une chaîne de caractères?

L'extrait de code ci-dessous ne fonctionne pas.

var filter = new FilterBuilder().Where(Core.Filters.User.Status)
.EqualTo(Core.Models.UserStatus.Active).And(new FilterBuilder().
Where(Core.Filters.User.LastName).StartsWith("J"));

foreach (Core.Models.User user in usersClient.GetFilteredEnumerator(filter))
{
    var test = user.Profile.LastName;
    var test2 = user.Profile.MobilePhone;
    // Faire quelque chose avec chaque utilisateur
}

Erreur:

ErrorCode: E0000031
ErrorID: oaeW2PeSC6_Tqy8exTTQSg7gg
ErrorSummary: Critères de recherche non valides.
ExceptionMessage: Exception de type 'Okta.Core.OktaException' a été levée.
Stack Trace:
   at Okta.Core.OktaExceptionResolver.ParseHttpResponse(HttpResponseMessage httpResponseMessage)
   at Okta.Core.OktaHttpClient.Execute(HttpRequestType requestType, Uri uri, String relativeUri, String content, Int32 waitMillis, Int32 retryCount, Boolean bAddAuthorizationHeader)
   at Okta.Core.Clients.ApiClient`1.GetList(Uri nextPage, Int32 pageSize, FilterBuilder filter, SearchType searchType, String query, String after, Nullable`1 startDate)
   at Okta.Core.Clients.ApiClient`1.GetFilteredEnumerator(FilterBuilder filter, SearchType searchType, Int32 pageSize, String query, String after, Nullable`1 startDate)
   at Okta.Web.MvcApplication.Application_AuthenticateRequest(Object sender, EventArgs e) in C:\PoC\Okta\Okta.Web\Global.asax.cs:line 60
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Que dois-je changer pour que cela fonctionne?

0voto

Raphael Londner Points 354

La raison pour laquelle vous rencontrez ce problème est que l'opérateur StartsWith n'est disponible qu'avec notre fonction "Recherche" (http://developer.okta.com/docs/api/resources/users.html#list-users-with-search), pas avec notre fonction "Filtrer" (http://developer.okta.com/docs/api/resources/users.html#list-users-with-a-filter), qui est le type de recherche par défaut utilisé dans le SDK C#.

Veuillez contacter l'équipe de support d'Okta à l'adresse http://support.okta.com si vous souhaitez activer la fonction "Recherche" dans votre organisation Okta.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X