Re: [scim] How to check isUsernameExist for Self Sign Up

Gayan Gunawardana <gayan@wso2.com> Mon, 06 February 2017 18:22 UTC

Return-Path: <gayan@wso2.com>
X-Original-To: scim@ietfa.amsl.com
Delivered-To: scim@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D1FF61295B6 for <scim@ietfa.amsl.com>; Mon, 6 Feb 2017 10:22:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=wso2.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qca4D9-CxiRr for <scim@ietfa.amsl.com>; Mon, 6 Feb 2017 10:22:56 -0800 (PST)
Received: from mail-wr0-x22b.google.com (mail-wr0-x22b.google.com [IPv6:2a00:1450:400c:c0c::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 418991295B0 for <scim@ietf.org>; Mon, 6 Feb 2017 10:22:56 -0800 (PST)
Received: by mail-wr0-x22b.google.com with SMTP id k90so25546626wrc.3 for <scim@ietf.org>; Mon, 06 Feb 2017 10:22:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wso2.com; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=iTPMmwXG+0jPIzHT4YT1afXRylpHNY9+M+S2rgPmNhs=; b=GKOktX02oFsxQcKbm84BYMrXPgG/f6APBnvb3ULISilQBF4MuRF9MAE+5prwOlHb5o q5Oin1oZPhWiSMxwWFQ5R09jJ/lkQN8PdxpoQj5ePGFfYLraLkrOEpykaXkAJ+4T8KGd Gjf2ojWthXINis74W/Qnb7ceiXuBKcx2m6F1g=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=iTPMmwXG+0jPIzHT4YT1afXRylpHNY9+M+S2rgPmNhs=; b=l2azymcf94n1tthwF87P9rnQTMNguU0mH+pxJid3mofpxY0KP53WdfyNgkZfHDRaBT KUgBBhyUkTjsZm15HNq18siYxaCGVY2U5MftngSBT0yWkF3czEfaFxEPG7jiZYWK68T2 Bqi8pw3zsUVKRE4oXU/UagdNqvqtGG0ovGRsLeHG/j+/VcKeymGDHJ45nP8R5qZIeniB 5Y8R8YwB6XgoGJYEFiLVaQLgIIIjUY1iPSWsYMiGXjObrdPGnR0/+KNcVBjyBigeYHzi 8/qm3McjBC4vbXud6uDkZ8Ppop6dUuL9y9raSF35JNRtzlH760pCTy7xPTnkiuLfGw56 +W6Q==
X-Gm-Message-State: AIkVDXKc0EbFPkEbHyvMbgdzNDMLsZX9xAf0gVnXfXvttldXHwCJO3Wj9eSV9fZUFMvOT7YNf3hPnp5eygjz3KRU
X-Received: by 10.223.131.34 with SMTP id 31mr12960815wrd.119.1486405374600; Mon, 06 Feb 2017 10:22:54 -0800 (PST)
MIME-Version: 1.0
Received: by 10.223.134.169 with HTTP; Mon, 6 Feb 2017 10:22:54 -0800 (PST)
In-Reply-To: <2457A99D-1CBA-4158-8CA7-A43EABA92991@oracle.com>
References: <CALzgRADp+vQfzQT9MEHWKiLJWH4kaSKtCUHDBOot79y18xyV0g@mail.gmail.com> <96ACFE7E-9A4C-4010-B43B-50D4086D0C49@oracle.com> <CALzgRAC4ka-r1rzXJ=3KPqO=zUmgojp2seGka0D61+85Uxve4g@mail.gmail.com> <23158D21-2EC9-4E0B-8592-17779D0E1311@oracle.com> <CALzgRAAuBx=j+8FN0c=K5a6qn4FXJwJYz15qwENad-e8XL=J9Q@mail.gmail.com> <90E3A155-A2CE-474D-A5F9-FBCC30605FFB@oracle.com> <2457A99D-1CBA-4158-8CA7-A43EABA92991@oracle.com>
From: Gayan Gunawardana <gayan@wso2.com>
Date: Mon, 06 Feb 2017 23:52:54 +0530
Message-ID: <CALzgRABDFabr8sSjVquhT7fU9DsAdP=1gLoN3oe7wDEzic67rw@mail.gmail.com>
To: "Phil Hunt (IDM)" <phil.hunt@oracle.com>
Content-Type: multipart/alternative; boundary="94eb2c0d106e587c1d0547e0b838"
Archived-At: <https://mailarchive.ietf.org/arch/msg/scim/AMLZFnWZiTFQCwMgFo58VsAY_7E>
Cc: scim@ietf.org
Subject: Re: [scim] How to check isUsernameExist for Self Sign Up
X-BeenThere: scim@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Simple Cloud Identity Management BOF <scim.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/scim>, <mailto:scim-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/scim/>
List-Post: <mailto:scim@ietf.org>
List-Help: <mailto:scim-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/scim>, <mailto:scim-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Feb 2017 18:22:59 -0000

On Mon, Feb 6, 2017 at 11:36 PM, Phil Hunt (IDM) <phil.hunt@oracle.com>
wrote:

> There is also a scim profile in oidc. See drafts section.
>
Thanks Phil. I guess this is the one [1].
[1]http://openid.net/specs/openid-connect-scim-profile-1_0.html

>
> Phil
>
> On Feb 6, 2017, at 9:43 AM, Phil Hunt (IDM) <phil.hunt@oracle.com> wrote:
>
> Dyn reg in oauth. But oidc may also apply depending on what you are doing.
>
> Phil
>
> On Feb 4, 2017, at 8:25 PM, Gayan Gunawardana <gayan@wso2.com> wrote:
>
>
>
> On Fri, Feb 3, 2017 at 1:24 AM, Phil Hunt (IDM) <phil.hunt@oracle.com>
> wrote:
>
>> Inline
>>
>> Phil
>>
>> On Feb 2, 2017, at 11:27 AM, Gayan Gunawardana <gayan@wso2.com> wrote:
>>
>> Hi Phil,
>>
>> On Fri, Feb 3, 2017 at 12:19 AM, Phil Hunt <phil.hunt@oracle.com> wrote:
>>
>>> Gayan,
>>>
>>> Keep in mind SCIM is just a RESTful api. There are no functional methods
>>> like isUsernameExist.
>>>
>> Yes totally understood.
>>
>>>
>>> You can…
>>>
>>> 1.  Just try HTTP POST to create the user and if there is a conflict, it
>>> gets rejected.  This is probably easiest.
>>>
>>> 2.  Use GET /Users?filter="(userName eq \”val\”)”&attributes=id.  If you
>>> can no records return there were no matches. If you get a return, it is in
>>> use.  Note, either way, you will get a successful response.
>>>
>> Yes both [1],[2] are possible but the problem is self sign up user(before
>> self sign up) does not have valid credentials to perform above operations.
>>
>>
>> As i described an app could register as a developer or use dyn reg.
>>
> I guess you are referencing to dynamic client registration in OIDC right ?
>
>>
>>
>>>
>>> Note, I suspect it is possible that despite checking with #2, you might
>>> still get a rejection when you POST. This might be due to a reserve or lock
>>> on the username or other identifier.
>>>
>>> Your rights as an administrative client will also impact what you get
>>> back with the query in particular.  For example, if you are querying
>>> anonymously, you might get no matches because the service provider has
>>> determined it is not going to answer your and confirm presence or not of
>>> the match.
>>>
>> Is there any security constrains for service providers to behave like
>> that for anonymous requests ?
>>
>>
>> Yes DoS attacks are a concern that prevent total anonymous registration.
>> You need some trusted broker like a web or mobile app.
>>
> Yes having some trusted broker like a web or mobile app would resolve many
> problems. Many Thanks Phil.
>
>>
>> Also many IDPs likely have a vetting process to establish some assurance
>> about claims. Eg when an enterprise calls scim the enterprise is judged
>> authoritative over employee assertions.
>>
>> Others might do secondary validation (eg email confirmation).
>>
>> All of this is really outside the scope of provisioning protocol but part
>> of the larger IDM services approaches.
>>
>>
>>> Likewise, many service providers will have DoS and other security
>>> restrictions on what clients can register.
>>>
>>> E.g. to moderate the need for “anonymous” registration, a mobile app
>>> could register with the service provider to obtain a “public” OAuth client
>>> credential that gives the mobile client the right to register a new user
>>> profile on behalf of the user (e.g. by using profile data from the mobile
>>> phone).
>>>
>>> Phil
>>>
>>> Oracle Corporation, Identity Cloud Services & Identity Standards
>>> @independentid
>>> www.independentid.com
>>> phil.hunt@oracle.com
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Feb 2, 2017, at 10:18 AM, Gayan Gunawardana <gayan@wso2.com> wrote:
>>>
>>> Hello,
>>>
>>> According to [1] self sign up can be achieved via sending authenticated
>>> request to /Me.
>>>
>>> What is the proper way to check isUsernameExist before self sign up ?
>>>
>>> [1]https://tools.ietf.org/html/rfc7644#section-3.11
>>>
>>> Thanks,
>>> Gayan
>>> --
>>> Gayan Gunawardana
>>> Software Engineer; WSO2 Inc.; http://wso2.com/
>>> Email: gayan@wso2.com
>>> Mobile: +94 (71) 8020933
>>> _______________________________________________
>>> scim mailing list
>>> scim@ietf.org
>>> https://www.ietf.org/mailman/listinfo/scim
>>>
>>>
>>>
>>
>>
>> --
>> Gayan Gunawardana
>> Software Engineer; WSO2 Inc.; http://wso2.com/
>> Email: gayan@wso2.com
>> Mobile: +94 (71) 8020933
>>
>>
>
>
> --
> Gayan Gunawardana
> Software Engineer; WSO2 Inc.; http://wso2.com/
> Email: gayan@wso2.com
> Mobile: +94 (71) 8020933
>
> _______________________________________________
> scim mailing list
> scim@ietf.org
> https://www.ietf.org/mailman/listinfo/scim
>
>


-- 
Gayan Gunawardana
Software Engineer; WSO2 Inc.; http://wso2.com/
Email: gayan@wso2.com
Mobile: +94 (71) 8020933