Chettinad College of Engg.& Tech., Karur

Department of CSE & IT

CS6703 GRID AND CLOUD COMPUTING

IV YEAR/ VII SEMESTER

Crash Course Material - III

Part A

  1. Analyze the need of MDS services in distributed system.

Monitoring and Discovery Service (MDS) is essential for providing configuration and adaptation capabilities for heterogeneous resources in an Distributed environment.

MDs offers discovery and utilization of the Virtual Organizations that are unknown to the user/client but also serves many purposes such as super scheduling, troubleshooting, performance diagnosis and application adaptation.

In GLOBUS toolkit this is achieved through the information service infrastructure called WS-MDS which provides two kinds of services, namely Grid Resource Information Service (GRIS) and Grid Index Information Service (GIIS).

  1. Define failover and fencing.

A fencing method is a method by which one node can forcibly prevent another node from making continued progress. This might be implemented by killing a process on the other node, by denying the other node's access to shared storage, or by accessing a PDU to cut the other node's power.

  1. How FUSE interface is used and where?

FUSE (Filesystem in Userspace) interface is used in HDFS. FUSE enables you to write a normal user land application as a bridge for a traditional filesystem interface. The hadoop-hdfs-fusepackage enables you to use your HDFS cluster as if it were a traditional filesystem on Linux.

  1. Define trust delegation chain

To reduce the number of times the user must enter his passphrasewhen several grids are used or have agents (local or remote) requesting services on behalf of a user, GSI provides a delegation capability and a delegation service that provides an interface to allow clients to delegate (and renew) X.509 proxy certificates to a service

  1. Formulate the categories of authorization for access control.

The authority can be classified into three categories:

  1. Attribute authorities - issue attribute assertions
  2. Policy authorities - authorization policies , and
  3. Identity authorities - issue certificates

The authorization server makes the final authorization decision

  1. Differentiate transport level security and message level security.

<Perceive and Tabulate the answer>

  1. Compose the primary pieces of information of a certificate in GSI authentication.

In GSI authentication, a certificate includes four primary pieces of information:

(1) a subject name, which identifies the person or object that the certificate represents;

(2) the public key belonging to the subject;

(3) the identity of a CA that has signed the certificate to certify that the public key and the identity both belong to the subject; and

(4) the digital signature of the named CA. X.509 provides each entity with a unique identifier (i.e., a distinguished name) and a method to assert/declare that identifier to another party through the use of an asymmetric key pair bound to the identifier by the certificate.

  1. List the risk factors and security levels of network level of cloud infrastructure.

Security Controls @ Network Level:

Part B

  1. Compare the Enterprise and Consumer Authentication Standards and Protocols.

2. Explain the following with block diagram & example

a.Kerberos b.PKI c.Digital Signature d.Certificate Authority

Kerberos is a computer network authentication protocol that works on the basis of 'tickets' to allow nodes communicating over a non-secure network to prove their identity to one another in a secure manner. It is designed to provide strong authentication for client/server applications by using secret-key cryptography

A public key infrastructure (PKI) is a set of roles, policies, and procedures needed to create, manage, distribute, use, store, and revoke digital certificates and manage public-key encryption. The purpose of a PKI is to facilitate the secure electronic transfer of information for a range of network activities such as e-commerce, internet banking and confidential email. It is required for activities where simple passwords are an inadequate authentication method and more rigorous proof is required to confirm the identity of the parties involved in the communication and to validate the information being transferred.

Digital Signature

A digital signature is a mathematical scheme for demonstrating the authenticity of a digital message or documents. A valid digital signature gives a recipient reason to believe that the message was created by a known sender, that the sender cannot deny having sent the message (authentication and non-repudiation), and that the message was not altered in transit (integrity).

Digital signatures are a standard element of most cryptographic protocol suites, and are commonly used for software distribution, financial transactions, contract management software, and in other cases where it is important to detect forgery or tampering.

Certificate Authority

In cryptography, a certificate authority or certification authority (CA) is an entity that issues digital certificates. A digital certificate certifies the ownership of a public key by the named subject of the certificate. This allows others (relying parties) to rely upon signatures or on assertions made about the private key that corresponds to the certified public key. In this model of trust relationships, a CA is a trusted third party—trusted both by the subject (owner) of the certificate and by the party relying upon the certificate.

The most commonly encountered public-key infrastructure (PKI) schemes are those used to implement https on the world-wide web. All these are based upon the X.509 standard and feature CAs.

3. Discuss the process involved in migrating typical processing systems and Security systems to Cloud environment.

Motivations for the migration of an application to the cloud:

•Broader reach

•Easier mobile access

•Business agility and flexibility

•Improved security

•Improved responsiveness

•Better analytics on application usage

•Improved availability

•Reduced and/or re -allocated costs

Series of steps end users should take to ensure successful migration of existing applications to cloudcomputing:

1.Assess your Applications and Workloads

2.Build the Business Case

3.Develop the Technical Approach

4.Adopt a Flexible Integration Model

5.Address Security and Privacy Requirements

6.Manage the Migration

Integration between applications is typically classified into three types:

•Process (or control) integration, where an application invokes another in order to execute a certain workflow

•Data integration, where applications share common data, or one application’s output becomes another application’s input

•Presentation integration, where multiple applications present their results simultaneously to a user through a dashboard or mashup.

4.Explain the concepts involved in resource management using GRAM.

Grid Resource Management using GRAM.

•GRAM provides the user to access the grid in order to run, terminate and monitor jobs remotely. The job request is sent to the gatekeeper of the machine. The gatekeeper creates a job manager to handle the job process.

•Job is a binary executable or command to be run in a remote machine. The remote machine to be contacted should have Globus toolkit installed. The server, which manages the requests of clients, is called a “gatekeeper”.

Gatekeeper’s job is:

–to perform mutual authentication of user and resource,

–determining a local user name for the remote user,

–starting a job manager which executes as that local user and actually handles the request.

•A job manageris responsible for creating the actual processes requested by the user.

Job submission modes: It can be either batch or non-batch.

–Batch Jobs: A job-id is returned when the job is submitted. The output is obtained via the job-id afterwards. It is useful in process-intensive applications.

–Non-batch Jobs: The client will wait for the remote gatekeeper throughout the whole process and then receive the output.

•The GRAM reporteris responsible for storing into MDS various information about scheduler structure and state

•You will be authenticated to the system using the following command:

•grid-proxy-init

•Your certificate was created under /tmp directory.

•ls –al /tmp

RSL provides a common language for the description of jobs and resources. It enables the user to construct complex resource and runtime environment descriptions by introducing specific attribute-value pairings.

Example:

& (executable = /bin/ls (* <-- that is an unquoted literal *))

(arguments = /grid/users)

(stdout = output.stdout)

•Before sending the query, first create a directory under /grid/users. Specify the name of the directory as your name.

mkdir /grid/users/tugba

•Then, run the following command:

globusrun -r concorde03.mcs.surrey.ac.uk '&(executable=/bin/ls)(arguments= /grid/users)(stdout= output.stdout)’

•You will see the following output:

GRAM Job submission successful

GLOBUS_GRAM_PROTOCOL_JOB_STATE_ACTIVE

GLOBUS_GRAM_PROTOCOL_JOB_STATE_DONE

Important RSL strings:

–arguments: executable name

–count: number of executions

–directory: the directory where the jobmanager uses

–environment: the environment variables required to execute the job

–stderr: Remote file to store the standard error from the job.

–stdin: Remote file to be used as an standard input

–stdout: Remote file to store the output of the job.

5.Summarize the practices of IAM Architecture in cloud computing with basic concepts and definitions of IAM and its components

1. IAM Challenges

One criticalchallenge of IAM concerns managing access for diverse user populations (employees, contractors, partners, etc.) accessing internal and externally hosted services. IT is constantly challenged to rapidly provision appropriate access to the users whose roles and responsibilities often change for business reasons. Another issue is the turnover of users within the organization. Turnover varies by industry and function—seasonal staffing fluctuations in finance departments, for example—and can also arise from changes in the business, such as mergers and acquisitions, new product and service releases, business process outsourcing, and changing responsibilities. As a result, sustaining IAM processes can turn into a persistent challenge.

Accesspolicies for information are seldom centrally and consistently applied. Organizations can contain disparate directories, creating complex webs of user identities, access rights, and procedures. This has led to inefficiencies in user and access management processes while exposing these organizations to significant security, regulatory compliance, and reputation risks.

To address these challenges and risks, many companies have sought technology solutions to enable centralized and automateduser access management. Many of these initiatives are entered into with high expectations, which is not surprising given that the problem is often large and complex. Most often those initiatives to improve IAM can span several years and incur considerable cost. Hence, organizations should approach their IAM strategy and architecture with both business and IT drivers that address the core inefficiency issues while preserving the control’s efficacy (related to access control). Only then will the organizations have a higher likelihood of success and return on investment.

2. IAM Definitions

Basicconcepts and definitions of IAM functions for any service:

Authentication

Authentication isthe process of verifying the identity of a user or system (e.g.,Lightweight Directory Access Protocol [LDAP] verifying the credentials presented by the user, where the identifier is the corporate user ID that is unique and assigned to an employee or contractor). Authentication usually connotes a more robust form of identification. In some use cases, such as service-to-service interaction, authentication involves verifying the network service requesting access to information served by another service (e.g., a travel web service that is connecting to a credit card gateway to verify the credit card on behalf of the user).

Authorization

Authorizationis the process of determining the privileges the user or system is entitled to once the identity is established. In the context of digital services, authorization usually follows the authentication step and is used to determine whether the user or service has the necessary privileges to perform certain operations—in other words, authorization is the process of enforcing policies.

Auditing

In thecontext of IAM, auditing entails the process of review and examination of authentication, authorization records, and activities to determine the adequacy of IAM system controls, to verify compliance with established security policies and procedures (e.g., separation of duties), to detect breaches in security services (e.g., privilege escalation), and to recommend any changes that are indicated for countermeasures.

3. IAM Architecture and Practice

IAM is not amonolithic solution that can be easily deployed to gain capabilities immediately. It is as much an aspect of architecture (seeFigure 1) as it is a collection of technology components, processes, and standard practices. Standard enterprise IAM architecture encompasses several layers of technology, services, and processes.

At the core of the deployment architecture is a directory service (such asLDAP orActive Directory) that acts as a repository for the identity, credential, and user attributes of the organization’s user pool. The directory interacts with IAM technology components such as authentication, user management, provisioning, and federation services that support the standard IAM practice and processes within the organization. It is not uncommon for organizations to use several directories that were deployed for environment-specific reasons (e.g., Windows systems using Active Directory, Unix systems using LDAP) or that were integrated into the environment by way of business mergers and acquisitions.

The IAM processes to support the business can be broadly categorized as follows:

User management

Activitiesfor the effective governance and management of identity life cycles

Authentication management

Activities for theeffective governance and management of the process for determining that an entity is who or what it claims to be

Authorization management

Activitiesfor the effective governance and management of the process for determining entitlement rights that decide what resources an entity is permitted to access in accordance with the organization’s policies

Access management

Enforcementof policies for access control in response to a request from an entity (user, services) wanting to access an IT resource within the organization

Data management and provisioning

Propagation of identity and data for authorization to IT resources via automated or manual processes

Monitoring and auditing

Monitoring,auditing, and reporting compliance by users regarding access to resources within the organization based on the defined policies

IAM processes support the following operational activities:

Provisioning

This is theprocess of on-boarding users to systems and applications. These processes provide users with necessary access to data and technology resources. The term typically is used in reference to enterprise-level resource management. Provisioning can be thought of as a combination of the duties of the human resources and IT departments, where users are given access to data repositories or systems, applications, and databases based on a unique user identity. Deprovisioningworks in the opposite manner, resulting in the deletion or deactivation of an identity or of privileges assigned to the user identity.

Credential and attribute management

These processes aredesigned to manage the life cycle of credentials and user attributes—create, issue, manage, revoke—to minimize the business risk associated with identity impersonation and inappropriate account use. Credentials are usually bound to an individual and are verified during the authentication process. The processes include provisioning of attributes, static (e.g., standard text password) and dynamic (e.g., one-time password) credentials that comply with a password standard (e.g., passwords resistant to dictionary attacks), handling password expiration, encryption management of credentials during transit and at rest, and access policies of user attributes (privacy and handling of attributes for various regulatory reasons).

Entitlement management

Entitlements arealso referred to asauthorization policies. The processes in this domain address theprovisioning and deprovisioning of privileges needed for the user to access resources including systems, applications, and databases. Proper entitlement management ensures that users are assigned only the required privileges (least privileges) that match with their job functions. Entitlement management can be used to strengthen the security of web services, web applications, legacy applications, documents and files, and physical security systems.

Compliance management

This processimplies that access rights and privileges are monitored and tracked to ensure the security of an enterprise’s resources. The process also helps auditors verify compliance to various internal access control policies, and standards that include practices such as segregation of duties, access monitoring, periodic auditing, and reporting. An example is a user certification process that allows application owners to certify that only authorized users have the privileges necessary to access business-sensitive information.

Identity federation management

Federation is theprocess of managing the trust relationships established beyond the internal network boundaries or administrative domain boundaries among distinct organizations. A federation is an association of organizations that come together to exchange information about their users and resources to enable collaborations and transactions (e.g., sharing user information with the organizations’ benefits systems managed by a third-party provider). Federation of identities to service providers will support SSO to cloud services.

Centralization of authentication (authN) and authorization (authZ)

A centralauthentication and authorization infrastructure alleviates the need for application developers to build custom authentication and authorization features into their applications. Furthermore, it promotes a loose coupling architecture where applications become agnostic to the authentication methods and policies. This approach is also called an “externalization of authN and authZ” from applications.