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
