Jitendra Singh's page

Senior Software Engineer
01
Nov

Introduction:

Cloud Computing can be seen as the logical evolution in outsourcing IT services. The promise is that, with Cloud Computing, every company (big or small) can get IT services in a very simple way. Cloud Computing is an epitome of the change in use of IT Infrastructure and Services as the consumers will not have to spend capital of owning or renting the Hardware/Software rather they can use the resources and expense is cut down to usage only.

So, cloud computing would give extra business value over a long period of time along ensuring that the quick changing business needs can be supported better than using traditional IT services. It seems like creating a prospective horizon for changing the Information Technology world into different form than what we perceive it today.

With this change there would be certain pros and cons associated. As of now the visibility on the implications is not very distant and requires a wait and watch strategy to gradually build/change the business models for different domains.

Impact on various domains:

Having the basic idea about Cloud Computing ,in this blog we will discuss the pros and cons of cloud computing in general and would try to understand possible impact of these on the different domains.

We would see large range of highly scalable new generation agile products and services to choose from. These would provide abstraction from current process and thereby reduction in the overall cost.We also expect some standardization to come into picture.

Some of Pros are enlisted here:

Reduced Cost: Costing model is incremental i.e. pay only for what you use thus saving the money.

Increased Storage: Since resources provided by the Cloud Service Provider are virtualized and can be scaled up as required gives the consumer flexibility of unlimited storage space.

Highly Automated: Most of the things are responsibility of CSP like Software/Server update, physical maintenance of infrastructure, licensing of software/tools etc

Mobility & flexibility: Information/service is accessible from anywhere seamlessly if cloud is accessible

Currently this seems like dominance of few gig players (Amazon/Google/Oracle) and thus rise of new industry leaders and IT vendors will leave fewer options for small software companies to cope up with the evolving business model.

The other cons that we can list are:

Security: A proper security model for cloud computing is still awaited. Physical location of hardware and software being unknown would make site inspections and audits difficult. There is also risk of data loss due to improper backups or system failures in the virtualized environment.

Dependency (Loss of Control): Most of the critical things are under control of CSP (Cloud Service Provider) like – Quality of Service (QoS), Contingency Procedures, Measurement of resource utilization

Cost: Cost structure would be difficult to analyze during initial setup/migration as there could be associated hidden costs for backup, restore, disaster recovery, issue solving and compliancy regulations. Moreover future changes in the cost should also be taken into consideration.

Decreased Flexibility: Migration to different CSP would not be simple and would require proper planning starting right while developing the applications (making them generic and portable)

Taking specific businesses into account:

Telecom: Telecom sector is one of the biggest consumers of IT infrastructure, may it be software or hardware so we can expect it to be affected at all levels viz Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS). Cloud Computing is based on virtualization of the resources much like running multiple VMs on same hardware, we know that there would be some trade-off for this in terms of lag due to network/virtualization. The lag of fraction of second could be fine for data traffic on the network but may not be up to mark for real time voice/video based services. So it looks like some services would still require dedicated resources/hardware to meet up the SLAs.

Healthcare: Quite obviously medical businesses generate huge amount of data like patient records, biomedical research, insurance claims. It is one of the major concerns for hospitals, insurers and researchers to manage this large amount of data. Cloud computing would offer each of these players a potentially more cost-effective alternative to traditional data storage and management solutions. But still there is fear that sharing a platform in a public cloud would compromise privacy regulations, So need of a strong regulatory standard is necessary.

E-Commerce: Cloud computing would be boon to the businesses in e-commerce as they are the ones working in a pretty similar fashion since a long time viz usually these businesses run virtually on the internet only,  for this  they have to setup virtual infrastructure and services from different vendors. Interaction with various vendors will now be eliminated and limited to a single service provider who can take care of all the requirements. So we expect a substantial growth of e-commerce to be obvious in near future.

Outsourcing: Most of the current business models associated with IT infrastructure and services do include outsourcing of various activities may it be maintenance or labor. With business migrating to cloud the need for these would be decreasing in long run as most of the things would be taken care by CSP. This means that there would be a downfall expected in requirement of traditional outsourcing but on the other hand the increase in specific outsourced services for migration to cloud can be seen. Overall there should be major change/shift in the outsourced services but this would be gradual.

Currently IT costs seem to be quite competitive but still remains inflated as compared to other products and services that we use today. We do see cloud computing as a potential candidate who can play the role of game changer and help to regulate the IT economics.  But the side effects and implications are yet to be well totally foreseen and understood. Kindly share your thoughts and understanding on the above topic to have a fruitful interaction.


Jitendra Singh– Senior Software Engineer

, , , , , ,

22
Sep

Think about your usual work day where you invariably require authenticated logging in to various applications like your work station, checking your mails, etc. All these require you to put in your log in details to allow you access. It’s quite cumbersome, isn’t it? A single sign on would be a great solution to this in the sense that single login takes you to all the application you visit in a day at work. A proactive step ahead to this would be implementing it in a cloud environment where a user can log in once to a cloud and can access the entire system of applications without having to log in separately.

In this blog we shall first discuss about generic implementation of Single Sign-On aka SSO.Then we would take the concept forward by extending the use of SSO in a cloud environment.

Let’s start with what is SSO?

Basically SSO is a centralized access control mechanism used for multiple applications which could be independent and may or may not be interrelated. User authentication is done only once and further user requests to multiple applications are handled seamlessly.Know more about SSO here.

An appropriate analogy to help you visualize this would be iGoogle login where user once logged in can access multiple applications like Gmail/Google docs/Orkut accounts without having to login to each individual applications. Hasn’t this made our lives simpler?

Generic Implementation of SSO

There are various security mechanisms e.g. Kerberos TGT, Smart Card, One Time Password Token OTP, Integrated Windows Authentication a re few of them. We would not go in to the implementation details of these security mechanisms but in general the basic set of implementation considerations would include the following:

• SSO should know what all applications it would be catering to and accordingly it would be using the encryption/decryption keys for handling the authentication requests.
• Using different keys across applications is recommended as these keys are shared between SSO and Client applications. Securing these keys is equally important to make sure the credibility of encryption mechanism is not compromised.
• SSO would manage a central user Database which contains user roles along with the authentication parameters. These roles could be queried by the serving application to decide the user privilege/grants.

SSO Implementation in Cloud

Currently, , there are two approaches available for using SSO in Cloud:

1. Self implementation of SSO adapters based on the exposed APIs from the Cloud Service Providers, which would include writing the code to integrate with cloud applications.
2. Another approach, a simpler one would be to use Out-of-Box SSO Products available in the market or use the SSO as a service (SaaS) from Cloud itself

You can also refer this link for further related information that you may want.

Once in place, it would simplify things from the user perspective as user would have to login only once either on the machine or a web portal depending on design and then user can access various applications and resources seamlessly. By leveraging Single Sign-On capabilities an organization can merge their IT infrastructures and Cloud in a seamless manner and enable a user to access both the user’s desktops and any Cloud Services via a single password.

Some of the Benefits to mention:

• Users get convenience of single user-id/password which is easier to manage/remember.
• Saves on user time by avoiding re-entering password while switching between applications.
• Stronger security and Easier for System Admin as the management of user accounts is centralized.
• Helpful for the provisioning and de-provisioning of passwords. If a new employee joins or leaves the organization there is only one single account to activate or deactivate rather than having multiple accounts to deal with.
• In addition to preventing security issues, there are significant costs savings to this approach.
For example, Single Sign-On users are less likely to lose passwords reducing the assistance required by IT helpdesks.
• Allows anywhere, anytime seamless access.

Benefits usually come with some tradeoffs like:

• Security threat due to password leak/misuse could affect multiple applications/resources.
• SSO System should be Highly Available (HA) as failure is critical for multiple applications.

We know that SSO is not a new concept, but it is now finding new horizon for connecting organizations to Cloud service providers like Google, Amazon, Oracle. It is an evolving concept providing potential for enabling users to experience seamless access to their corporate applications along with email/social-network accounts, documents/files/photos and shared resources. Big Organizations have been using SSO systems to manage internal applications/resources since a long time but extending the SSO to cloud would be a major step ahead. Do write in your views so that we can share this important information in an interactive manner.


Jitendra Singh– Senior Software Engineer

, , ,