crowd

A client for Atlassian Crowd v2.0.5

INSTALL:

sudo gem install crowd-stefanwille

REQUIREMENTS:

USE:

See demo/crowd_demo.rb and spec/crowd_spec.rb.

Assumptions (used in demo/crowd_demo.rb and spec/crowd_spec.rb):

  • Crowd Server is on localhost, port 8095
  • Application name and password is 'soaptest'
  • Application 'soaptest' directory set to 'True'

FEATURES:

Methods exercised (implemented, not implemented):

  • addAttributeToPrincipal
  • addGroup
  • addPrincipal
  • addPrincipalToGroup
  • addPrincipalToRole
  • addRole
  • authenticateApplication
  • authenticatePrincipal
  • authenticatePrincipalSimple
  • createPrincipalToken
  • findAllGroupNames
  • findAllGroupRelationships
  • findAllPrincipalNames
  • findAllRoleNames
  • findGroupByName
  • findGroupMemberships
  • findPrincipalByName
  • findPrincipalByToken
  • findRoleByName
  • findRoleMemberships
  • getCookieInfo
  • getGrantedAuthorities
  • invalidatePrincipalToken
  • isCacheEnabled
  • isGroupMember
  • isRoleMember
  • isValidPrincipalToken
  • removeAttributeFromPrincipal
  • removeGroup
  • removePrincipal
  • removePrincipalFromGroup
  • removePrincipalFromRole
  • removeRole
  • resetPrincipalCredential
  • searchGroups
  • searchPrincipals
  • searchRoles
  • updateGroup
  • updatePrincipalAttribute
  • updatePrincipalCredential

Role related methods were left in the Ruby API but are not tested. Roles are deprecated in favor of groups in Crowd 2.0

NOTES:

WSDL stub generated with:

rake wsdl2ruby

RSpec tests run with:

rake test
(requires a Crowd server on localhost, easy to setup)  

Local gem installed with:

rake install

Original SOAP API is available from Atlassian at http://confluence.atlassian.com/display/CROWDDEV/SOAP+API

TODO:

  • Rightsize error handling
  • Create Rails plugin

SYNOPSIS:

Ruby client for Atlassian Crowd 2.0.5

FILES:

  • README.rdoc - You're soaking in it
  • demo/crowd_demo.rb - A demo that will get you started quickly
  • spec/crowd_spec.rb - Tests. Also the API documentation.
  • lib/crowd.rb - Class wrapping crowd calls
  • lib/crowd/soap/crowd-2.0.5.wsdl - Downloaded from Crowd
  • lib/crowd/soap/driver.rb - Generated
  • lib/crowd/soap/mapping_registry.rb - Generated
  • lib/crowd/soap/default.rb - Generated
  • lib/crowd/soap/SecurityServerClient.rb - Generated

AUTHORS:

updated by Stefan Wille [email protected]

updated by Olli Helenius [email protected]

updated by Evgeny Zislis ([email protected])

original by Jason Rimmer ([email protected]) & gemified for rubyforge by Daniel Morrison (http://collectiveidea.com)

LICENSE:

Public Domain

Created by Jason Rimmer, [email protected] on 2007-10-16. I hereby place this work that I have authored into the public domain and in the process abandon all copyright protection.

Updated by Evgeny Zislis, [email protected] on 2008-05-14

Updated by Olli Helenius [email protected] on 2009-09-09

Updated by Stefan Wille [email protected] on 2010-07-14