So a solution might be a remote API to get the tenantId by passing the fully
qualified username or the tenant domain.

Thanks,
Thilina

On Sat, Jan 22, 2011 at 7:50 PM, Indika Kumara <[email protected]> wrote:

> There are two ways for deploying the Cassandra as a service - embedded and
> separate.  It is like using an embedded database vs databse network server.
>
> For the embedded case, we have to start the Cassandra with in a carbon
> component accessing the server API of the Cassandra. For the separate server
> case, we have to connect to the Cassandra from its client API. In the latter
> case, the code does the authentication does not have access to the
> 'CarbonContext'. It is like to connecting to a remote multi tenant database
> from a local application.
> We decided to the latter case as the POC.
>
> Thanks,
>
> Indika
>
>
> On Sat, Jan 22, 2011 at 8:08 PM, Thilina Buddhika <[email protected]>wrote:
>
>> As Paul mentioned tenantId is exposed through the CarbonContext. So if
>> these Cassendra API calls are originated from Stratos, then it is possible
>> to get the tenantId.
>>
>> I was mislead thinking that there should be a WS-API which exposes this
>> tenantID, which is not available currently.
>>
>> Thanks,
>> Thilina
>>
>>
>> On Sat, Jan 22, 2011 at 6:52 PM, Sanjiva Weerawarana <[email protected]>wrote:
>>
>>> Thilina since this is "internal Stratos code" why can't we expose the
>>> tenant ID to it? Basically the getTenantID call should be callable by this
>>> code ... and if necessary the jars can be signed or whatever auth we need
>>> for that.
>>>
>>> Sanjiva.
>>>
>>> On Sat, Jan 22, 2011 at 6:48 PM, Indika Kumara <[email protected]> wrote:
>>>
>>>> The Cassandra client API and inter-node communications are based on the
>>>> Thrift API. It uses TCP and all other available Cassandra clients are built
>>>> top on that API. With those clients, I can only give TCP port and host –
>>>> cannot use a URL.  As multiple tenants can have the users with the same
>>>> name, either the tenant ID or tenant domain name should be used when log in
>>>> to the system.
>>>>
>>>> 1)     * **Using the tenant ID*
>>>>
>>>> This is only applicable if the application (a Cassandra client) knows
>>>> the current tenant ID. For example, a data service in wso2-stratos. This is
>>>> what I have done so far – parsing the ‘tenantID’ along with credentials 
>>>> when
>>>> log-ining to the Cassandra. However, if the client does not know the
>>>> ‘tenantID’, he cannot log-ins into the system. For example, a user having a
>>>> web application that uses the Cassandra as the database (local), and later
>>>> want to move to the Cassandra as a Service instead of the local Cassandra
>>>> server.  Then, the user has to use the tenant domain.
>>>>
>>>> *2)      Using the tenant domain*
>>>>
>>>> There are mainly two ways to domain name
>>>>
>>>> 1)      Provide it as the URL
>>>>
>>>> https://www.google.com/a/wso2.com/ServiceLogin?service
>>>>
>>>>  And can logs into ‘indika’ and ‘my password’
>>>>
>>>> This method cannot be used currently because of the aforementioned
>>>> limitation in the Thrift API (TCP).
>>>>
>>>> 2)      Provide as the part of user name
>>>>
>>>> https://www.google.com/accounts/ServiceLogin?service
>>>>
>>>> And it is needed to login as ‘[email protected]’ and ‘my password’
>>>>
>>>> This is what I wanted do. Within the Cassandra, I want to call the IS
>>>> server, and takes the tenant-id by giving the ‘tenant-domain or complete
>>>> user name’.
>>>>
>>>> As we decided to use the ‘tenantID’ to differentiate the keyspaces
>>>> having the same yet belongs to different tenants.   I can use ‘tenant
>>>> domain’ instead of ‘tenant ID’.
>>>>
>>>>
>>>> What should be the proper solution? I highly appreciate your help.
>>>>
>>>>
>>>> Thanks,
>>>>
>>>>
>>>> Indika
>>>>
>>>>
>>>> On Sat, Jan 22, 2011 at 5:34 PM, Amila Suriarachchi <[email protected]>wrote:
>>>>
>>>>>
>>>>>
>>>>> On Sat, Jan 22, 2011 at 12:15 PM, Indika Kumara <[email protected]>wrote:
>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>> $ subject ?
>>>>>>
>>>>>> The scenario is that a user (a typical Cassandra client application)
>>>>>> log-ins to the Cassandra with his username( e.g. [email protected]) and
>>>>>> password.
>>>>>
>>>>> Within the user authentication logic, the Cassandra calls an IS server
>>>>>> for real authentication.
>>>>>> All user + tenant registration information is in the IS server. I need
>>>>>> to access the 'tenantID' of the user for further operations in the
>>>>>> Cassandra. I noticed in the ' AuthenticationAdmin'  that the 'tenantId' 
>>>>>> is
>>>>>> located. Could I get that 'tenantId'?
>>>>>>
>>>>>> This is the scenario where the Cassandra is a separate server.
>>>>>>
>>>>>
>>>>> If the user first logs into the Casendra there must be a way to give
>>>>> teneneID when login. One user name can ocurr in different tenants.
>>>>>
>>>>> thanks,
>>>>> Amila.
>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Indika
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Carbon-dev mailing list
>>>>>> [email protected]
>>>>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Carbon-dev mailing list
>>>>> [email protected]
>>>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Carbon-dev mailing list
>>>> [email protected]
>>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>>>>
>>>>
>>>
>>>
>>> --
>>> Sanjiva Weerawarana, Ph.D.
>>> Founder, Chairman & CEO; WSO2, Inc.;  http://wso2.com/
>>> email: [email protected]; phone: +94 11 763 9614; cell: +94 77 787 6880 |
>>> +1 650 265 8311
>>> blog: http://sanjiva.weerawarana.org/
>>>
>>> Lean . Enterprise . Middleware
>>>
>>> _______________________________________________
>>> Carbon-dev mailing list
>>> [email protected]
>>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>>>
>>>
>>
>>
>> --
>> Thilina Buddhika
>> Senior Software Engineer
>> WSO2 Inc. ; http://wso2.com
>> lean . enterprise . middleware
>>
>> phone : +94 77 44 88 727
>> blog : http://blog.thilinamb.com
>>
>> _______________________________________________
>> Carbon-dev mailing list
>> [email protected]
>> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>>
>>
>
> _______________________________________________
> Carbon-dev mailing list
> [email protected]
> https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev
>
>


-- 
Thilina Buddhika
Senior Software Engineer
WSO2 Inc. ; http://wso2.com
lean . enterprise . middleware

phone : +94 77 44 88 727
blog : http://blog.thilinamb.com
_______________________________________________
Carbon-dev mailing list
[email protected]
https://wso2.org/cgi-bin/mailman/listinfo/carbon-dev

Reply via email to