CDSSO, SAML & Policy Agents

Hi all,
My client would like to use Policy Agents to provide access control to internal systems. They would also like to use SAML 2.0 to interact with 3rd parties.
The use case I have in mind is as follows;
1. User authenticates to a Portal (not secured via Policy Agent)
2. User accesses protected resource on Portal (Policy Agent intercepts and validates login status)
3. User clicks a link to access 3rd party site. 3rd party site sends a SAML request back to us. We respond with SAML response. User obtains access to 3rd Party.
There are a number of issues I see with this Use Case;
1. The Portal will authenticate the user credentials against Access Manager via a back-end WebService. It will receive an SSOToken. This does not log the user on to the Policy Agent on the site.
2. The Policy Agent does not have an authenticated session. The SSOToken the portal just obtained cannot be used to authenticate to the Policy Agent. The Policy Agent requires a Liberty Post profile. Is there an alternative to the Liberty profile to automatically obtain a session on the Policy Agent? How can I generate a valid Liberty profile that the Policy Agent will accept?
3. The incoming SAML request must re-use the identity established when the user authenticated to the portal - I can't challenge the user again for credentials - this must be seamless. I think I need to use the SDK to turn the SSOToken in to a SAML reply. Are there any alternatives?
Thanks for helping
Jez

I don't believe that the agent know anything about SAML.

Similar Messages

  • Policy agent 2.2 CDSSO configuration help

    Hi
    Really need help to configure CDSSO for policy agent 2.2 for weblogic application server 8.14. Below are the related properties in AMAgent.properties file. I assume you do not need configure anything on Access Manager side, please correct me if I am wrong.
    com.sun.identity.agents.config.cdsso.enable = true
    com.sun.identity.agents.config.cdsso.redirect.uri = /agentapp/sunwCDSSORedirectURI
    com.sun.identity.agents.config.cdsso.cdcservlet.url[0] = http://accessmanager.example.com/amserver/cdcservlet
    com.sun.identity.agents.config.cdsso.clock.skew = 60
    com.sun.identity.agents.config.cdsso.trusted.id.provider[0] = http://accessmanager.example.com/amserver/cdcservlet
    when I hit my application, I get the page can not be found error for the following url: http://appserver.mycom.com/agentapp/sunwCDSSORedirectURI
    Can anyone tell me what is wrong? what should be the value for the propertity: com.sun.identity.agents.config.cdsso.redirect.uri?
    Thanks!
    Authguy

    Had same 404 error. Solution for us was uninstal agent (agentadmin --uninstall) and the agentadmin -install again. 1st we typo'd the app path wrong.                                                                                                                                                                                                                                                                                                           

  • Policy Agent 2.2, IIS 6.0, CDSSO and redirects after authentication

    Hi
    I've got a problem where a HTTP/1.1 200 and 302 are returned by the Policy Agent / Application, after the Javascripted POST by the CDCServlet content is performed.
    The expected functionality is that the user is authenticated with the AM, the CDC Servlet serves the JavaScript page that will do a POST to the Policy Agent. The Policy Agent should then do what it needs to do with the POST, and forward request to the Application. The Application then does what it needs to do, and in this case, serves a HTTP/1.1 302 for redirection back to the browser.
    However, it seems that the Policy Agent might be returning a HTTP/1.1 200, and setting the iPlanetDirectoryPro cookie, quickly followed by the HTTP/1.1 302 and the setting of whatever cookies it wants to set.
    The Policy Agent should be respecting the return code of the Application. This problem does not appear when run against the Policy Agent for the Sun ONE Web Server.
    Wondering if anyone has seen this before?
    Here is sanitized output from a trace on the POST and resulting response.
    POST /oslp/?sunwMethod=GET HTTP/1.1
    Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
    Accept-Language: en-au
    Content-Type: application/x-www-form-urlencoded
    Accept-Encoding: gzip, deflate
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
    Host: sco88342744.corp.qed.qld.gov.au
    Content-Length: 3496
    Connection: Keep-Alive
    Cache-Control: no-cache
    X-ProcessAndThread: IEXPLORE.EXE [904; 2908]
    LARES=<snip>
    HTTP/1.1 200 OK
    Date: Wed, 16 May 2007 22:25:42 GMT
    Server: Microsoft-IIS/6.0
    Set-Cookie: iPlanetDirectoryPro=AQIC5wM2LY4Sfcz8tCfJ96AXxjIgRzuZJDgE7gMeTO0iIS4%3D%40AAJTSQACMDQ%3D%23;Path=/
    HTTP/1.1 302 Found
    Date: Wed, 16 May 2007 22:25:42 GMT
    Server: Microsoft-IIS/6.0
    X-AspNet-Version: 1.1.4322
    Location: /oslp/user/signon.aspx
    Set-Cookie: ASP.NET_SessionId=lh4sus55y1iy2r5514onnjuj; path=/
    Cache-Control: no-cache
    Pragma: no-cache
    Expires: -1
    Content-Type: text/html; charset=utf-8
    Content-Length: 139
    <html><head><title>Object moved</title></head><body>
    <h2>Object moved to <a href='/oslp/user/signon.aspx'>here</a>.</h2>
    </body></html>

    Hi,
    we had the same problem, but we got support
    from readme.txt
    Bug#: 6789020
    Agent type: All Agents
    Description: In CDSSO mode non enforced POST requests cannot be accessed
    Bug#: 6736820
    Agent type: IIS 6 Agent
    Description: IIS 6 agent doesn't work properly with ASP pages in CDSSO mode
    Both bugs should be fixed in this version:
    Sun Java System Web Agents 2.2-02 hotpatch2

  • ID Server and Policy Agent for AS .. is secure?

    Hello there,
    I have a question. Quite critical question, concerning iPlanetDirectoryPro cookie. If I've got it right, this cookie contains SSO Token. And the SSO token can be used with identity server to obtain any SSO assetion. I've experimentaly confirmed this.
    Now, can anyone tell me why this cookie is sent to any host in my domain? The default after instalation is "bgs.sk". This default value enables any host in my domain to impersonate me. Well, I still can change this, but it is now good to have insecure default values anyway, is it?
    Second, and more critical problem: I have Policy Agent installed on my Application Server. It looks like the agent requires access to the iPlanetDirectoryPro cookie to work correctly. But, if my application server has my SSO token, it can impersonate me anywhere. Not a good situation at all. That would mean security hole as big as hangar doors.
    Are my assumptions correct? Am I overlooking something?
    (All valid for ID server 6.0 and Liberty protocols)
    Thanks for any help.

    Although Sun promote Identity Server by emphasizing its Liberty/SAML feature, the product itself use a proprietary protocol for SSO and CDSSO.
    As all we know, this product could be totally useless without Sun's Policy/J2EE Agent deployed. But ironically these agents communicate with Identity Server in its own way, nothing to do with SAML, XACML, or even SOAP.
    The agent approach is usually not a good idea. We saw more and more problem raised from fields related to agent stability and scalability. We never see any performance benchmark data from Sun. Since the communication between agt and Identity Server are proprietary, no ISV can make agent for this product. You have to wait for Sun for agent support if you have new system not on the support matrix.
    In addition to agent, another big issue of Identity Server is its complex DIT structure. In fact, we prefer to have RDBMS as Identity Server's repository. Sun abuse ldap just because this company doesn't have any database product but still want to provide a pure Sun platform (JES) to customer. So they compromise the architecture for business reason, I'd like to tell you, I don't like the way Identity Server store data in DIT, I don't like the console UI (its for technical geek), and on one in our company dare to do any configuration change.
    Now Sun put Identity Server as the core of its JES product stack. If you have time to take a look at how the SJS Portal use Identity Server and how SSO between Portal channel and Email/Calendar Server are achieved, you'll find that you just buy a "framework" (I mean Identity server), not a product, because you have to do every integration work by intensively coding.
    I predict that Identity Server will be significantly rearchitctured in the near future, otherwise we don't see any benefit this product can bring to me. It is a headache for deployment as well as maintenance. If you just need Single Sign-On, there are lots alternative to achieve, Sun's Identity Server is really overkill. It's authentication feature is ok, but authorization feature (policy, role) is very limited. If you have lots of Windows/IIS web app need to do SSO with Identity Server, god bless you... you better have a sharp programmer to wrap up the C API so as your ASP programmer can leverage Identity Server SDK, and you got to pray for IIS agent behave well. In addition, don't forget to learn more about JATO if you want to do some fancy customization on the default login page.

  • No log for am policy agent for iis6

    Hello!
    Im trying to get Policy Agent for IIS to run on my Win Srv 2003 with IIS6 and Sharepoint Services.
    I am running the OpenSSO version of Access Manager.
    I have installed the agent and done the initial cofiguration.
    When i try to browse the resource i get a login prompt (IIS Basic Auth)and cannot login followed by "Not Authorized 401.3"
    I should get redirected to the AM Login page, shouldn't I?
    I tried to look for answers in the log file but the /debug/<id> directory i empty.
    Anyone know what to do?
    The amAgent.properties file:
    # $Id: AMAgent.properties,v 1.103 2005/09/19 22:08:34 madan Exp $
    # The syntax of this file is that of a standard Java properties file,
    # see the documentation for the java.util.Properties.load method for a
    # complete description. (CAVEAT: The SDK in the parser does not currently
    # support any backslash escapes except for wrapping long lines.)
    # All property names in this file are case-sensitive.
    # NOTE: The value of a property that is specified multiple times is not
    # defined.
    # WARNING: The contents of this file are classified as an UNSTABLE
    # interface by Sun Microsystems, Inc. As such, they are subject to
    # significant, incompatible changes in any future release of the
    # software.
    # The name of the cookie passed between the Access Manager
    # and the SDK.
    # WARNING: Changing this property without making the corresponding change
    # to the Access Manager will disable the SDK.
    com.sun.am.cookie.name = iPlanetDirectoryPro
    # The URL for the Access Manager Naming service.
    com.sun.am.naming.url = http://login.lta.mil.se:8080/opensso/namingservice
    # The URL of the login page on the Access Manager.
    com.sun.am.policy.am.login.url = http://login.lta.mil.se:8080/opensso/UI/Login
    # Name of the file to use for logging messages.
    com.sun.am.policy.agents.config.local.log.file = C:/Sun/Access_Manager/Agents/2.2/debug/Identifier_1414639615/amAgent
    # This property is used for Log Rotation. The value of the property specifies
    # whether the agent deployed on the server supports the feature of not. If set
    # to false all log messages are written to the same file.
    com.sun.am.policy.agents.config.local.log.rotate = true
    # Name of the Access Manager log file to use for logging messages to
    # Access Manager.
    # Just the name of the file is needed. The directory of the file
    # is determined by settings configured on the Access Manager.
    com.sun.am.policy.agents.config.remote.log = amAuthLog.sharepoint.lta.mil.se.80
    # Set the logging level for the specified logging categories.
    # The format of the values is
    # <ModuleName>[:<Level>][,<ModuleName>[:<Level>]]*
    # The currently used module names are: AuthService, NamingService,
    # PolicyService, SessionService, PolicyEngine, ServiceEngine,
    # Notification, PolicyAgent, RemoteLog and all.
    # The all module can be used to set the logging level for all currently
    # none logging modules. This will also establish the default level for
    # all subsequently created modules.
    # The meaning of the 'Level' value is described below:
    # 0 Disable logging from specified module*
    # 1 Log error messages
    # 2 Log warning and error messages
    # 3 Log info, warning, and error messages
    # 4 Log debug, info, warning, and error messages
    # 5 Like level 4, but with even more debugging messages
    # 128 log url access to log file on AM server.
    # 256 log url access to log file on local machine.
    # If level is omitted, then the logging module will be created with
    # the default logging level, which is the logging level associated with
    # the 'all' module.
    # for level of 128 and 256, you must also specify a logAccessType.
    # *Even if the level is set to zero, some messages may be produced for
    # a module if they are logged with the special level value of 'always'.
    com.sun.am.log.level = 5
    # The org, username and password for Agent to login to AM.
    com.sun.am.policy.am.username = UrlAccessAgent
    com.sun.am.policy.am.password = PN4rEZ1uhx1404ivWY6HPQ==
    # Name of the directory containing the certificate databases for SSL.
    com.sun.am.sslcert.dir = C:/Sun/Access_Manager/Agents/2.2/iis6/cert
    # Set this property if the certificate databases in the directory specified
    # by the previous property have a prefix.
    com.sun.am.certdb.prefix =
    # Should agent trust all server certificates when Access Manager
    # is running SSL?
    # Possible values are true or false.
    com.sun.am.trust_server_certs = true
    # Should the policy SDK use the Access Manager notification
    # mechanism to maintain the consistency of its internal cache? If the value
    # is false, then a polling mechanism is used to maintain cache consistency.
    # Possible values are true or false.
    com.sun.am.notification.enable = true
    # URL to which notification messages should be sent if notification is
    # enabled, see previous property.
    com.sun.am.notification.url = http://sharepoint.lta.mil.se:80/amagent/UpdateAgentCacheServlet?shortcircuit=false
    # This property determines whether URL string case sensitivity is
    # obeyed during policy evaluation
    com.sun.am.policy.am.url_comparison.case_ignore = true
    # This property determines the amount of time (in minutes) an entry
    # remains valid after it has been added to the cache. The default
    # value for this property is 3 minutes.
    com.sun.am.policy.am.polling.interval=3
    # This property allows the user to configure the User Id parameter passed
    # by the session information from the access manager. The value of User
    # Id will be used by the agent to set the value of REMOTE_USER server
    # variable. By default this parameter is set to "UserToken"
    com.sun.am.policy.am.userid.param=UserToken
    # Profile attributes fetch mode
    # String attribute mode to specify if additional user profile attributes should
    # be introduced into the request. Possible values are:
    # NONE - no additional user profile attributes will be introduced.
    # HTTP_HEADER - additional user profile attributes will be introduced into
    # HTTP header.
    # HTTP_COOKIE - additional user profile attributes will be introduced through
    # cookies.
    # If not within these values, it will be considered as NONE.
    com.sun.am.policy.agents.config.profile.attribute.fetch.mode=NONE
    # The user profile attributes to be added to the HTTP header. The
    # specification is of the format ldap_attribute_name|http_header_name[,...].
    # ldap_attribute_name is the attribute in data store to be fetched and
    # http_header_name is the name of the header to which the value needs
    # to be assigned.
    # NOTE: In most cases, in a destination application where a "http_header_name"
    # shows up as a request header, it will be prefixed by HTTP_, and all
    # lower case letters will become upper case, and any - will become _;
    # For example, "common-name" would become "HTTP_COMMON_NAME"
    com.sun.am.policy.agents.config.profile.attribute.map=cn|common-name,ou|organiz ational-unit,o|organization,mail|email,employeenumber|employee-number,c|country
    # Session attributes mode
    # String attribute mode to specify if additional user session attributes should
    # be introduced into the request. Possible values are:
    # NONE - no additional user session attributes will be introduced.
    # HTTP_HEADER - additional user session attributes will be introduced into HTTP header.
    # HTTP_COOKIE - additional user session attributes will be introduced through cookies.
    # If not within these values, it will be considered as NONE.
    com.sun.am.policy.agents.config.session.attribute.fetch.mode=NONE
    # The session attributes to be added to the HTTP header. The specification is
    # of the format session_attribute_name|http_header_name[,...].
    # session_attribute_name is the attribute in session to be fetched and
    # http_header_name is the name of the header to which the value needs to be
    # assigned.
    # NOTE: In most cases, in a destination application where a "http_header_name"
    # shows up as a request header, it will be prefixed by HTTP_, and all
    # lower case letters will become upper case, and any - will become _;
    # For example, "common-name" would become "HTTP_COMMON_NAME"
    com.sun.am.policy.agents.config.session.attribute.map=
    # Response Attribute Fetch Mode
    # String attribute mode to specify if additional user response attributes should
    # be introduced into the request. Possible values are:
    # NONE - no additional user response attributes will be introduced.
    # HTTP_HEADER - additional user response attributes will be introduced into
    # HTTP header.
    # HTTP_COOKIE - additional user response attributes will be introduced through
    # cookies.
    # If not within these values, it will be considered as NONE.
    com.sun.am.policy.agents.config.response.attribute.fetch.mode=NONE
    # The response attributes to be added to the HTTP header. The specification is
    # of the format response_attribute_name|http_header_name[,...].
    # response_attribute_name is the attribute in policy response to be fetched and
    # http_header_name is the name of the header to which the value needs to be
    # assigned.
    # NOTE: In most cases, in a destination application where a "http_header_name"
    # shows up as a request header, it will be prefixed by HTTP_, and all
    # lower case letters will become upper case, and any - will become _;
    # For example, "common-name" would become "HTTP_COMMON_NAME"
    com.sun.am.policy.agents.config.response.attribute.map=
    # The cookie name used in iAS for sticky load balancing
    com.sun.am.policy.am.lb.cookie.name = GX_jst
    # indicate where a load balancer is used for Access Manager
    # services.
    # true | false
    com.sun.am.load_balancer.enable = false
    ####Agent Configuration####
    # this is for product versioning, please do not modify it
    com.sun.am.policy.agents.config.version=2.2
    # Set the url access logging level. the choices are
    # LOG_NONE - do not log user access to url
    # LOG_DENY - log url access that was denied.
    # LOG_ALLOW - log url access that was allowed.
    # LOG_BOTH - log url access that was allowed or denied.
    com.sun.am.policy.agents.config.audit.accesstype = LOG_BOTH
    # Agent prefix
    com.sun.am.policy.agents.config.agenturi.prefix = http://sharepoint.lta.mil.se:80/amagent
    # Locale setting.
    com.sun.am.policy.agents.config.locale = en_US
    # The unique identifier for this agent instance.
    com.sun.am.policy.agents.config.instance.name = unused
    # Do SSO only
    # Boolean attribute to indicate whether the agent will just enforce user
    # authentication (SSO) without enforcing policies (authorization)
    com.sun.am.policy.agents.config.do_sso_only = true
    # The URL of the access denied page. If no value is specified, then
    # the agent will return an HTTP status of 403 (Forbidden).
    com.sun.am.policy.agents.config.accessdenied.url =
    # This property indicates if FQDN checking is enabled or not.
    com.sun.am.policy.agents.config.fqdn.check.enable = true
    # Default FQDN is the fully qualified hostname that the users should use
    # in order to access resources on this web server instance. This is a
    # required configuration value without which the Web server may not
    # startup correctly.
    # The primary purpose of specifying this property is to ensure that if
    # the users try to access protected resources on this web server
    # instance without specifying the FQDN in the browser URL, the Agent
    # can take corrective action and redirect the user to the URL that
    # contains the correct FQDN.
    # This property is set during the agent installation and need not be
    # modified unless absolutely necessary to accommodate deployment
    # requirements.
    # WARNING: Invalid value for this property can result in the Web Server
    # becoming unusable or the resources becoming inaccessible.
    # See also: com.sun.am.policy.agents.config.fqdn.check.enable,
    # com.sun.am.policy.agents.config.fqdn.map
    com.sun.am.policy.agents.config.fqdn.default = sharepoint.lta.mil.se
    # The FQDN Map is a simple map that enables the Agent to take corrective
    # action in the case where the users may have typed in an incorrect URL
    # such as by specifying partial hostname or using an IP address to
    # access protected resources. It redirects the browser to the URL
    # with fully qualified domain name so that cookies related to the domain
    # are received by the agents.
    # The format for this property is:
    # com.sun.am.policy.agents.config.fqdn.map = [invalid_hostname|valid_hostname][,...]
    # This property can also be used so that the agents use the name specified
    # in this map instead of the web server's actual name. This can be
    # accomplished by doing the following.
    # Say you want your server to be addressed as xyz.hostname.com whereas the
    # actual name of the server is abc.hostname.com. The browsers only knows
    # xyz.hostname.com and you have specified polices using xyz.hostname.com at
    # the Access Manager policy console, in this file set the mapping as
    # com.sun.am.policy.agents.fqdn.map = valid|xyz.hostname.com
    # Another example is if you have multiple virtual servers say rst.hostname.com,
    # uvw.hostname.com and xyz.hostname.com pointing to the same actual server
    # abc.hostname.com and each of the virtual servers have their own policies
    # defined, then the fqdnMap should be defined as follows:
    # com.sun.am.policy.agents.fqdn.map = valid1|rst.hostname.com,valid2|uvw.hostname.com,valid3|xyz.hostname.com
    # WARNING: Invalid value for this property can result in the Web Server
    # becoming unusable or the resources becoming inaccessible.
    com.sun.am.policy.agents.config.fqdn.map =
    # Cookie Reset
    # This property must be set to true, if this agent needs to
    # reset cookies in the response before redirecting to
    # Access Manager for Authentication.
    # By default this is set to false.
    # Example : com.sun.am.policy.agents.config.cookie.reset.enable=true
    com.sun.am.policy.agents.config.cookie.reset.enable=false
    # This property gives the comma separated list of Cookies, that
    # need to be included in the Redirect Response to Access Manager.
    # This property is used only if the Cookie Reset feature is enabled.
    # The Cookie details need to be specified in the following Format
    # name[=value][;Domain=value]
    # If "Domain" is not specified, then the default agent domain is
    # used to set the Cookie.
    # Example : com.sun.am.policy.agents.config.cookie.reset.list=LtpaToken,
    # token=value;Domain=subdomain.domain.com
    com.sun.am.policy.agents.config.cookie.reset.list=
    # This property gives the space separated list of domains in
    # which cookies have to be set in a CDSSO scenario. This property
    # is used only if CDSSO is enabled.
    # If this property is left blank then the fully qualified cookie
    # domain for the agent server will be used for setting the cookie
    # domain. In such case it is a host cookie instead of a domain cookie.
    # Example : com.sun.am.policy.agents.config.cookie.domain.list=.sun.com .iplanet.com
    com.sun.am.policy.agents.config.cookie.domain.list=
    # user id returned if accessing global allow page and not authenticated
    com.sun.am.policy.agents.config.anonymous_user=anonymous
    # Enable/Disable REMOTE_USER processing for anonymous users
    # true | false
    com.sun.am.policy.agents.config.anonymous_user.enable=false
    # Not enforced list is the list of URLs for which no authentication is
    # required. Wildcards can be used to define a pattern of URLs.
    # The URLs specified may not contain any query parameters.
    # Each service have their own not enforced list. The service name is suffixed
    # after "# com.sun.am.policy.agents.notenforcedList." to specify a list
    # for a particular service. SPACE is the separator between the URL.
    com.sun.am.policy.agents.config.notenforced_list = SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/UI/* SERVER_PROTO://SERVER_HOST:SERVER_PORTCONSOLE_DEPLOY_URI/* SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/login_images/* SERVER_PROTO://SERVER_HOST:SERVER_PORT/docs* SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/namingservice SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/sessionservice SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/loggingservice SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/profileservice SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/policyservice SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/config* SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/js/* SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/css/* SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/authservice SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/SAMLAwareServlet SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/SAMLSOAPReceiver SERVER_PROTO://SERVER_HOST:SERVER_PORTSERVER_DEPLOY_URI/SAMLPOSTProfileServlet
    # Boolean attribute to indicate whether the above list is a not enforced list
    # or an enforced list; When the value is true, the list means enforced list,
    # or in other words, the whole web site is open/accessible without
    # authentication except for those URLs in the list.
    com.sun.am.policy.agents.config.notenforced_list.invert = false
    # Not enforced client IP address list is a list of client IP addresses.
    # No authentication and authorization are required for the requests coming
    # from these client IP addresses. The IP address must be in the form of
    # eg: 192.168.12.2 1.1.1.1
    com.sun.am.policy.agents.config.notenforced_client_ip_list =
    # Enable POST data preservation; By default it is set to false
    com.sun.am.policy.agents.config.postdata.preserve.enable = false
    # POST data preservation : POST cache entry lifetime in minutes,
    # After the specified interval, the entry will be dropped
    com.sun.am.policy.agents.config.postcache.entry.lifetime = 10
    # Cross-Domain Single Sign On URL
    # Is CDSSO enabled.
    com.sun.am.policy.agents.config.cdsso.enable=false
    # This is the URL the user will be redirected to for authentication
    # in a CDSSO Scenario.
    com.sun.am.policy.agents.config.cdcservlet.url =
    # Enable/Disable client IP address validation. This validate
    # will check if the subsequent browser requests come from the
    # same ip address that the SSO token is initially issued against
    com.sun.am.policy.agents.config.client_ip_validation.enable = false
    # Below properties are used to define cookie prefix and cookie max age
    com.sun.am.policy.agents.config.profile.attribute.cookie.prefix = HTTP_
    com.sun.am.policy.agents.config.profile.attribute.cookie.maxage = 300
    # Logout URL - application's Logout URL.
    # This URL is not enforced by policy.
    # if set, agent will intercept this URL and destroy the user's session,
    # if any. The application's logout URL will be allowed whether or not
    # the session destroy is successful.
    com.sun.am.policy.agents.config.logout.url=
    # Any cookies to be reset upon logout in the same format as cookie_reset_list
    com.sun.am.policy.agents.config.logout.cookie.reset.list =
    # By default, when a policy decision for a resource is needed,
    # agent gets and caches the policy decision of the resource and
    # all resource from the root of the resource down, from the Access Manager.
    # For example, if the resource is http://host/a/b/c, the the root of the
    # resource is http://host/. This is because more resources from the
    # same path are likely to be accessed subsequently.
    # However this may take a long time the first time if there
    # are many many policies defined under the root resource.
    # To have agent get and cache the policy decision for the resource only,
    # set the following property to false.
    com.sun.am.policy.am.fetch_from_root_resource = true
    # Whether to get the client's hostname through DNS reverse lookup for use
    # in policy evaluation.
    # It is true by default, if the property does not exist or if it is
    # any value other than false.
    com.sun.am.policy.agents.config.get_client_host_name = true
    # The following property is to enable native encoding of
    # ldap header attributes forwarded by agents. If set to true
    # agent will encode the ldap header value in the default
    # encoding of OS locale. If set to false ldap header values
    # will be encoded in UTF-8
    com.sun.am.policy.agents.config.convert_mbyte.enable = false
    #When the not enforced list or policy has a wildcard '*' character, agent
    #strips the path info from the request URI and uses the resulting request
    #URI to check against the not enforced list or policy instead of the entire
    #request URI, in order to prevent someone from getting access to any URI by
    #simply appending the matching pattern in the policy or not enforced list.
    #For example, if the not enforced list has the value http://host/*.gif,
    #stripping the path info from the request URI will prevent someone from
    #getting access to http://host/index.html by using the URL http://host/index.html?hack.gif.
    #However when a web server (for exmample apache) is configured to be a reverse
    #proxy server for a J2EE application server, path info is interpreted in a different
    #manner since it maps to a resource on the proxy instead of the app server.
    #This prevents the not enforced list or policy from being applied to part of
    #the URI below the app serverpath if there is a wildcard character. For example,
    #if the not enforced list has value http://host/webapp/servcontext/* and the
    #request URL is http://host/webapp/servcontext/example.jsp the path info
    #is /servcontext/example.jsp and the resulting request URL with path info stripped
    #is http://host/webapp, which will not match the not enforced list. By setting the
    #following property to true, the path info will not be stripped from the request URL
    #even if there is a wild character in the not enforced list or policy.
    #Be aware though that if this is set to true there should be nothing following the
    #wildcard character '*' in the not enforced list or policy, or the
    #security loophole described above may occur.
    com.sun.am.policy.agents.config.ignore_path_info = false
    # Override the request url given by the web server with
    # the protocol, host or port of the agent's uri specified in
    # the com.sun.am.policy.agents.agenturiprefix property.
    # These may be needed if the agent is sitting behind a ssl off-loader,
    # load balancer, or proxy, and either the protocol (HTTP scheme),
    # hostname, or port of the machine in front of agent which users go through
    # is different from the agent's protocol, host or port.
    com.sun.am.policy.agents.config.override_protocol =
    com.sun.am.policy.agents.config.override_host =
    com.sun.am.policy.agents.config.override_port = true
    # Override the notification url in the same way as other request urls.
    # Set this to true if any one of the override properties above is true,
    # and if the notification url is coming through the proxy or load balancer
    # in the same way as other request url's.
    com.sun.am.policy.agents.config.override_notification.url =
    # The following property defines how long to wait in attempting
    # to connect to an Access Manager AUTH server.
    # The default value is 2 seconds. This value needs to be increased
    # when receiving the error "unable to find active Access Manager Auth server"
    com.sun.am.policy.agents.config.connection_timeout =
    # Time in milliseconds the agent will wait to receive the
    # response from Access Manager. After the timeout, the connection
    # will be drop.
    # A value of 0 means that the agent will wait until receiving the response.
    # WARNING: Invalid value for this property can result in
    # the resources becoming inaccessible.
    com.sun.am.receive_timeout = 0
    # The three following properties are for IIS6 agent only.
    # The two first properties allow to set a username and password that will be
    # used by the authentication filter to pass the Windows challenge when the Basic
    # Authentication option is selected in Microsoft IIS 6.0. The authentication
    # filter is named amiis6auth.dll and is located in
    # Agent_installation_directory/iis6/bin. It must be installed manually on
    # the web site ("ISAPI Filters" tab in the properties of the web site).
    # It must also be uninstalled manually when unintalling the agent.
    # The last property defines the full path for the authentication filter log file.
    com.sun.am.policy.agents.config.iis6.basicAuthentication.username =
    com.sun.am.policy.agents.config.iis6.basicAuthentication.password =
    com.sun.am.policy.agents.config.iis6.basicAuthentication.logFile = C:/Sun/Access_Manager/Agents/2.2/debug/Identifier_1414639615/amAuthFilter

    If the agent doesnot start properly you would always get redirected to com.sun.am.policy.agents.config.accessdenied.url , if thats not specified you will get a 403.
    For the agent itself check that the naming.url is correct. the agent username and passwords are correct, and see that the user has priviledges to write to the agent log files. Apart from these post the windows event logs.

  • Liberty IDP/SP/Policy Agent 2.2 and cookie hijacking

    Hi Gurus,
    In our implementation, we have IDP (eauthidp.etc.net) and an SP (eauthsp.etc.net) and some policy agents (eauthdev.etc.net).
    Both IDP and SP are AM 7.1. Policy agent is 2.2.
    We used IDP for authentication and SP for authorization. We would like to implement CookieHijacking changes also between SP and Policy Agents.
    With Liberty, is it possible? If yes then what URL do I need to give in com.sun.am.policy.agents.config.cdcservlet.url property of AMAgent.properties.
    Is there any other way of implementing this?
    Thanks,
    Vivek

    Hi N,
    I looked all the docs and done some analysis. I found that there is no out-of-the-box configuration.
    The way I could come up is:
    1. Configure Cookie HIjacking in PA.
    2. For CDSSO Servlet give following value:
    https://eauthsp2.etc.net/amserver/preLogin?metaAlias=eauthsp2.etc.net
    3. On the SP side, make CDSSO changes.
    4. Create class that implements FederationSPAdapter. In that class either redirect to CDCServlet or do that same processing that CDCServlet does.
    I am still reading the documents on how to stick this class in the SP so that it will be called after SSOFederation process completes.
    Let me know if you think differently....
    Vivek

  • Policy Agent for JBoss

    Hi,
    I have installed SAM (together with S1DS, Web Server and Administration Server (from JES installer)).
    I have installed and configured Policy Agent for JBoss AS, but i'm getting a browser "Redirect loop" (Redirection limit for this URL exceeded. Unable to load the requested page. This may be caused by cookies that are blocked.) error after I login with a correct user/password combination when I try to access the sample application.
    My browser accepts cookies from all domains and I get no error in console.
    My AMAgent.properties looks like this:
    com.sun.identity.agents.config.user.mapping.mode = USER_ID
    com.sun.identity.agents.config.user.attribute.name = employeenumber
    com.sun.identity.agents.config.user.principal = false
    com.sun.identity.agents.config.user.token = UserToken
    com.sun.identity.agents.config.client.ip.header =
    com.sun.identity.agents.config.client.hostname.header =
    com.sun.identity.agents.config.load.interval = 0
    com.sun.identity.agents.config.locale.language = en
    com.sun.identity.agents.config.locale.country = US
    com.sun.identity.agents.config.organization.name = /
    com.sun.identity.agents.config.audit.accesstype = LOG_BOTH
    com.sun.identity.agents.config.log.disposition = ALL
    com.sun.identity.agents.config.remote.logfile = amAgent_11_126_14_20_8080.log
    com.sun.identity.agents.config.local.logfile = /home/ciuc/stuff/src/j2ee_agents/am_jboss_agent/agent_001/logs/audit/amAgent_11_126_14_20_8080.log
    com.sun.identity.agents.config.local.log.rotate = false
    com.sun.identity.agents.config.local.log.size = 52428800
    com.sun.identity.agents.config.webservice.enable = false
    com.sun.identity.agents.config.webservice.endpoint[0] =
    com.sun.identity.agents.config.webservice.process.get.enable = true
    com.sun.identity.agents.config.webservice.authenticator =
    com.sun.identity.agents.config.webservice.internalerror.content = WSInternalErrorContent.txt
    com.sun.identity.agents.config.webservice.autherror.content  = WSAuthErrorContent.txt
    com.sun.identity.agents.config.access.denied.uri =
    com.sun.identity.agents.config.login.form[0] =
    com.sun.identity.agents.config.login.error.uri[0] =
    com.sun.identity.agents.config.login.use.internal = true
    com.sun.identity.agents.config.login.content.file = FormLoginContent.txt
    com.sun.identity.agents.config.auth.handler[] =    
    com.sun.identity.agents.config.logout.handler[] =
    com.sun.identity.agents.config.verification.handler[] =
    com.sun.identity.agents.config.redirect.param = goto
    com.sun.identity.agents.config.login.url[0] = http://sam.domain:80/amserver/UI/Login
    com.sun.identity.agents.config.login.url.prioritized = true
    com.sun.identity.agents.config.agent.host =
    com.sun.identity.agents.config.agent.port =
    com.sun.identity.agents.config.agent.protocol =
    com.sun.identity.agents.config.login.attempt.limit = 0
    com.sun.identity.agents.config.sso.decode = true
    com.sun.identity.agents.config.amsso.cache.enable = true
    com.sun.identity.agents.config.cookie.reset.enable = false
    com.sun.identity.agents.config.cookie.reset.name[0] =
    com.sun.identity.agents.config.cookie.reset.domain[] = 
    com.sun.identity.agents.config.cookie.reset.path[] =
    com.sun.identity.agents.config.cdsso.enable = false
    com.sun.identity.agents.config.cdsso.redirect.uri = /agentapp/sunwCDSSORedirectURI
    com.sun.identity.agents.config.cdsso.cdcservlet.url[0] = http://dm-test-win-1:80/amserver/cdcservlet
    com.sun.identity.agents.config.cdsso.clock.skew = 0
    com.sun.identity.agents.config.cdsso.trusted.id.provider[0] = http://dm-test-win-1:80/amserver/cdcservlet
    com.sun.identity.agents.config.logout.application.handler[] =
    com.sun.identity.agents.config.logout.uri[] =
    com.sun.identity.agents.config.logout.request.param[] =
    com.sun.identity.agents.config.logout.introspect.enabled = false
    com.sun.identity.agents.config.logout.entry.uri[] =
    com.sun.identity.agents.config.fqdn.check.enable = true
    com.sun.identity.agents.config.fqdn.default = jbossAS.domain
    com.sun.identity.agents.config.fqdn.mapping[] =
    com.sun.identity.agents.config.legacy.support.enable = false
    com.sun.identity.agents.config.legacy.user.agent[0] = Mozilla/4.7*
    com.sun.identity.agents.config.legacy.redirect.uri = /agentapp/sunwLegacySupportURI
    com.sun.identity.agents.config.response.header[] =
    com.sun.identity.agents.config.redirect.attempt.limit = 0
    com.sun.identity.agents.config.port.check.enable = false
    com.sun.identity.agents.config.port.check.file = PortCheckContent.txt
    com.sun.identity.agents.config.port.check.setting[8080] = http
    com.sun.identity.agents.config.notenforced.uri[0] = /agentsample/public/*
    com.sun.identity.agents.config.notenforced.uri[1] = /agentsample/images/*
    com.sun.identity.agents.config.notenforced.uri[2] = /agentsample/styles/*
    com.sun.identity.agents.config.notenforced.uri[3] = /agentsample/index.html
    com.sun.identity.agents.config.notenforced.uri[4] = /agentsample
    com.sun.identity.agents.config.notenforced.uri.invert = false
    com.sun.identity.agents.config.notenforced.uri.cache.enable = true
    com.sun.identity.agents.config.notenforced.uri.cache.size = 1000
    com.sun.identity.agents.config.notenforced.ip[0] =
    com.sun.identity.agents.config.notenforced.ip.invert = false
    com.sun.identity.agents.config.notenforced.ip.cache.enable = true
    com.sun.identity.agents.config.notenforced.ip.cache.size = 1000
    com.sun.identity.agents.config.attribute.cookie.separator = |
    com.sun.identity.agents.config.attribute.date.format = EEE, d MMM yyyy hh:mm:ss z
    com.sun.identity.agents.config.attribute.cookie.encode = true
    com.sun.identity.agents.config.profile.attribute.fetch.mode = NONE
    com.sun.identity.agents.config.profile.attribute.mapping[] =
    com.sun.identity.agents.config.session.attribute.fetch.mode = NONE
    com.sun.identity.agents.config.session.attribute.mapping[] =
    com.sun.identity.agents.config.response.attribute.fetch.mode = NONE
    com.sun.identity.agents.config.response.attribute.mapping[] =
    com.sun.identity.agents.config.bypass.principal[0] =
    com.sun.identity.agents.config.default.privileged.attribute[0] = AUTHENTICATED_USERS
    com.sun.identity.agents.config.privileged.attribute.type[0] = Role
    com.sun.identity.agents.config.privileged.attribute.tolowercase[Role] = false
    com.sun.identity.agents.config.privileged.session.attribute[0] =
    com.sun.identity.agents.config.service.resolver = com.sun.identity.agents.jboss.v40.AmJBossAgentServiceResolver
    com.sun.identity.agents.app.username = amagent
    com.iplanet.am.service.secret = AQICJmGvlBWYuAYQndALuvNKiw==
    am.encryption.pwd = /mY/WidDT34aJtbcFS0pCKFEt6evPeTF
    com.sun.identity.client.encryptionKey= /mY/WidDT34aJtbcFS0pCKFEt6evPeTF
    com.iplanet.services.debug.level=error
    com.iplanet.services.debug.directory=/home/ciuc/stuff/src/j2ee_agents/am_jboss_agent/agent_001/logs/debug
    com.iplanet.am.cookie.name=iPlanetDirectoryPro
    com.iplanet.am.naming.url=http://sam.domain:80/amserver/namingservice
    com.iplanet.am.notification.url=http://jbossAS.domain:8080/agentapp/notification
    com.iplanet.am.session.client.polling.enable=false
    com.iplanet.am.session.client.polling.period=180
    com.iplanet.security.encryptor=com.iplanet.services.util.JCEEncryption
    com.iplanet.am.sdk.remote.pollingTime=1
    com.sun.identity.sm.cacheTime=1
    com.iplanet.am.localserver.protocol=http
    com.iplanet.am.localserver.host=jbossAS.domain
    com.iplanet.am.localserver.port=8080
    com.iplanet.am.server.protocol=http
    com.iplanet.am.server.host=sam.domain
    com.iplanet.am.server.port=80
    com.sun.identity.agents.server.log.file.name=amRemotePolicyLog
    com.sun.identity.agents.logging.level=BOTH
    com.sun.identity.agents.notification.enabled=true
    com.sun.identity.agents.notification.url=http://jbossAS.domain:8080/agentapp/notification
    com.sun.identity.agents.polling.interval=3
    com.sun.identity.policy.client.cacheMode=subtree
    com.sun.identity.policy.client.booleanActionValues=iPlanetAMWebAgentService|GET|allow|deny:iPlanetAMWebAgentService|POST|allow|deny
    com.sun.identity.policy.client.resourceComparators=serviceType=iPlanetAMWebAgentService|class=com.sun.identity.policy.plugins.HttpURLResourceName|wildcard=*|delimiter=/|caseSensitive=false
    com.sun.identity.policy.client.clockSkew=1011.126.14.20 is the computer where I have the JBoss installation.
    11.126.14.18 is the computer where I have SAM services.
    Do you have any idea why this error may occur?
    Thank you in advance,
    Cristi

    Hi,
    Thanks for your responses, I've included my AMAgent.properties below if you could take a look at it.
    I only seem to run into the problem when I authenticate if the following is set:
    com.sun.identity.agents.config.profile.attribute.fetch.mode = HTTP_HEADER
    If that is set to NONE then I can access the application fine, but if i use the HTTP_HEADER and attempt to pass information via the header I get stuck in the loop which results in the message <strong>".Redirection limit for this URL exceeded. Unable to load the requested page. This may be caused by cookies that are blocked."</strong>
    There is no helpful output in either my container log or the Policy Agent logs.
    The myHost.local. exists within my /etc/hosts file and using ping and other tools resolve fine.
    I am using JBOSS 4.2.2 on Linux (and windows).
    If anyone can help save my sanity it would be appreciated.
    com.sun.identity.agents.config.filter.mode = URL_POLICY
    com.sun.identity.agents.config.user.mapping.mode = USER_ID
    com.sun.identity.agents.config.user.attribute.name = employeenumber
    com.sun.identity.agents.config.user.principal = false
    com.sun.identity.agents.config.user.token = UserToken
    com.sun.identity.agents.config.load.interval = 0
    com.sun.identity.agents.config.locale.language = en
    com.sun.identity.agents.config.locale.country = US
    com.sun.identity.agents.config.audit.accesstype = LOG_NONE
    com.sun.identity.agents.config.log.disposition = REMOTE
    com.sun.identity.agents.config.remote.logfile = amAgent_8089.log
    com.sun.identity.agents.config.local.logfile = /usr/j2ee_agents/am_jboss_agent/agent_001/logs/audit/amAgent_8089.log
    com.sun.identity.agents.config.local.log.rotate = false
    com.sun.identity.agents.config.local.log.size = 52428800
    com.sun.identity.agents.config.webservice.enable = false
    com.sun.identity.agents.config.webservice.endpoint[0] =
    com.sun.identity.agents.config.webservice.process.get.enable = true
    com.sun.identity.agents.config.webservice.authenticator =
    com.sun.identity.agents.config.webservice.internalerror.content = WSInternalErrorContent.txt
    com.sun.identity.agents.config.webservice.autherror.content  = WSAuthErrorContent.txt
    com.sun.identity.agents.config.login.form[0] = /manager/AMLogin.html
    com.sun.identity.agents.config.login.form[1] = /host-manager/AMLogin.html
    com.sun.identity.agents.config.login.error.uri[0] = /manager/AMError.html
    com.sun.identity.agents.config.login.error.uri[1] = /host-manager/AMError.html
    com.sun.identity.agents.config.login.use.internal = true
    com.sun.identity.agents.config.login.content.file = FormLoginContent.txt
    com.sun.identity.agents.config.auth.handler[] =   
    com.sun.identity.agents.config.logout.handler[] =
    com.sun.identity.agents.config.verification.handler[] =
    com.sun.identity.agents.config.redirect.param = goto
    com.sun.identity.agents.config.login.url[0] = http://myHost.local:8080/amserver/UI/Login
    com.sun.identity.agents.config.login.url.prioritized = true
    com.sun.identity.agents.config.login.url.probe.enabled = true
    com.sun.identity.agents.config.login.url.probe.timeout = 2000
    com.sun.identity.agents.config.agent.host =
    com.sun.identity.agents.config.agent.port =
    com.sun.identity.agents.config.agent.protocol =
    com.sun.identity.agents.config.login.attempt.limit = 0
    com.sun.identity.agents.config.sso.decode = true
    com.sun.identity.agents.config.amsso.cache.enable = true
    com.sun.identity.agents.config.cookie.reset.enable = false
    com.sun.identity.agents.config.cookie.reset.name[0] =
    com.sun.identity.agents.config.cookie.reset.domain[] =
    com.sun.identity.agents.config.cookie.reset.path[] =
    com.sun.identity.agents.config.cdsso.enable = false
    com.sun.identity.agents.config.cdsso.redirect.uri = /agentapp/sunwCDSSORedirectURI
    com.sun.identity.agents.config.cdsso.cdcservlet.url[0] = http://myHost.local:8080/amserver/cdcservlet
    com.sun.identity.agents.config.cdsso.clock.skew = 0
    com.sun.identity.agents.config.cdsso.trusted.id.provider[0] = http://myHost.local:8080/amserver/cdcservlet
    com.sun.identity.agents.config.cdsso.secure.enable = false
    #com.sun.identity.agents.config.cdsso.domain[0] =
    com.sun.identity.agents.config.logout.application.handler[] =
    com.sun.identity.agents.config.logout.uri[] =
    com.sun.identity.agents.config.logout.request.param[] =
    com.sun.identity.agents.config.logout.introspect.enabled = false
    com.sun.identity.agents.config.logout.entry.uri[] =
    com.sun.identity.agents.config.fqdn.check.enable = true
    com.sun.identity.agents.config.fqdn.default = am.ufidev.local.
    com.sun.identity.agents.config.fqdn.mapping[] =
    com.sun.identity.agents.config.legacy.support.enable = false
    com.sun.identity.agents.config.legacy.user.agent[0] = Mozilla/4.7*
    com.sun.identity.agents.config.legacy.redirect.uri = /agentapp/sunwLegacySu<br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Problem in POST data preserve in Policy Agent 2.2 for SJSWS 6.1

    Hi
    I am using Policy Agent 2.2 for SJSWS 6.1
    I have a requirement to preserve the POST data when during the following situation.
    Consider a situation where in the user has logged in to our webapp and the user remains in a page which has a form with Post method .
    Mean while the session (of AM) times out and now the user enters the data in the data and submits the form.
    The user will be redirected to the login page and then the requested service should be performed, which is not happening in this case(POST). Suppose in if the form used a GET method this works fine.
    I have tried by configuring the following property in AMAgent.properties file.
    com.sun.am.policy.agents.config.postdata.preserve.enable = true
    But it doesn't work. When I tried to troubleshoot, I learned from the following resource that, POST data preservation is only supported on Policy Agent 2.2 for Sun Java System Web Server 7.0 Is it not supported on 6.1?
    http://docs.sun.com/app/docs/doc/820-1130/gaueu
    I get the following error in the log file of SJSWS.
    trying to POST /dummypost/sunpostpreserve2007-09-2804:48:53.379, send-file reports: HTTP4142: can't find /opt/SUNWwbsvr/docs/dummypost/sunpostpreserve2007-09-2804:48:53.379 (File not found)
    I have verified that the following entry is made in the obj.conf
    PathCheck fn=validate_session_policy
    <Object ppath="*/dummypost/sunpostpreserve*">
    Service type=text/* method=(GET) fn=append_post_data
    </Object>
    <Object ppath="*/UpdateAgentCacheServlet*">
    Service type=text/* method=(POST) fn=process_notification
    </Object>
    I am using the PA 2.2 which says that the following bug is fixed.
    Bug(s) fixed in 2.2 RTM Hotpatch 8
    ==================================
    Bug#: 6545159
    Agent type: Sun Java System Web Server agent
    Description: CDSSO mode wipes out form post data
    Appreciate your help.
    thanks & regards
    Madhu

    Hi
    Now I get 404 error and the logs in amAgent is
    2007-10-03 04:56:20.922 Error 22356:a51e558 PolicyAgent: Error Registering POST content body
    2007-10-03 04:56:20.922MaxDebug 22356:a51e558 PolicyAgent: Register POST content body : (null)
    2007-10-03 04:56:20.923 Debug 22356:a51e558 PolicyAgent: Register POST data key :2007-10-0304:56:20.922
    2007-10-03 04:56:20.923 Error 22356:a51e558 PolicyAgent: am_web_postcache_insert(): Unknown exception encountered.
    2007-10-03 04:56:20.923 Warning 22356:a51e558 PolicyAgent: Register POST data insert into hash table failed:2007-10-0304:56:20.922
    And in the errors log file of SJSWS is+_
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="uri-clean" Directive="PathCheck"
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="uri-clean" Directive="PathCheck" returned 0 (REQ_PROCEED)
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="find-pathinfo" Directive="PathCheck"
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="find-pathinfo" Directive="PathCheck" returned -2 (REQ_NOACTION)
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="find-index-j2ee" Directive="PathCheck"
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="find-index-j2ee" Directive="PathCheck" returned -2 (REQ_NOACTION)
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="find-index" index-names="index.html,home.html,index.jsp" Directive="PathCheck"
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="find-index" index-names="index.html,home.html,index.jsp" Directive="PathCheck" returned -2 (REQ_NOACTION)
    [03/Oct/2007:05:13:05] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="validate_session_policy" Directive="PathCheck"
    [03/Oct/2007:05:13:05] fine (22515): Updating accelerator cache
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="validate_session_policy" Directive="PathCheck" returned 0 (REQ_PROCEED)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="type-j2ee" Directive="ObjectType"
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="type-j2ee" Directive="ObjectType" returned 0 (REQ_PROCEED)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="type-by-extension" Directive="ObjectType"
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="type-by-extension" Directive="ObjectType" returned 0 (REQ_PROCEED)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="force-type" type="text/plain" Directive="ObjectType"
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="force-type" type="text/plain" Directive="ObjectType" returned 0 (REQ_PROCEED)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing method="(GET|HEAD|POST)" type="*~magnus-internal/*" fn="send-file" Directive="Service"
    [03/Oct/2007:05:13:14] warning (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, send-file reports: HTTP4142: can't find /opt/WMS/rel/www/webserver7/https-localhost.localdomain/docs/dummypost/sunpostpreserve2007-10-0304:56:20.922 (File not found)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: method="(GET|HEAD|POST)" type="*~magnus-internal/*" fn="send-file" Directive="Service" returned -1 (REQ_ABORTED)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="error-j2ee" Directive="Error"
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="error-j2ee" Directive="Error" returned -2 (REQ_NOACTION)
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: executing fn="flex-log" Directive="AddLog"
    [03/Oct/2007:05:13:14] finest (22515): for host 27.63.254.1 trying to POST /dummypost/sunpostpreserve2007-10-0304:56:20.922, func_exec reports: fn="flex-log" Directive="AddLog" returned 0 (REQ_PROCEED)
    thanks
    Madhu

  • This log -------------policy agent 2.1 for iis5.0

    Sun Java System Identity Server Policy Agent 2.1 for Microsoft IIS 5.0
    Sun\Identity_Server\Agents\2.1\debug\C__Inetpub_wwwroot\amAgent
    2004-07-25 18:06:22.156 Warning 1064:00D01120 PolicyAgent: OnPreprocHeaders(): Identity Server Cookie not found.
    2004-07-25 18:06:22.156 Error 1064:00D01120 PolicyAgent: do_redirect() ServerSupportFunction did not succeed: Attempted status = 302 Found
    2004-07-25 18:06:22.156 Warning 1064:00D01120 PolicyAgent: OnPreprocHeaders(): No cookies found.
    2004-07-25 18:06:22.156 Error 1064:00D01120 PolicyAgent: do_redirect() ServerSupportFunction did not succeed: Attempted status = 302 Found
    2004-07-25 18:07:53.921 Error 1064:00D01120 PolicyEngine: am_policy_evaluate: InternalException in Service::getPolicyResult with error message:Policy not found for resource: http://guorui.mygodsun.com:49153/index.asp and code:7
    2004-07-25 18:07:53.921 Warning 1064:00D01120 PolicyAgent: am_web_is_access_allowed(http://guorui.mygodsun.com:49153/index.asp, GET) denying access: status = no policy found (7)
    2004-07-25 18:07:53.937 128 1064:00D01120 RemoteLog: User amAdmin was denied access to http://guorui.mygodsun.com:49153/index.asp.
    2004-07-25 18:07:54.062 Error 1064:00D01120 PolicyAgent: do_redirect(): Error while calling am_web_get_redirect_url(): status = success
    2004-07-25 18:07:54.078 Error 1064:00D01120 PolicyAgent: do_redirect() WriteClient did not succeed: Attempted message = HTTP/1.1 403 Forbidden
    Content-Length: 13
    Content-Type: text/plain
    403 Forbidden
    from that log,help me
    my:
    Sun Java System Identity Server 6.1
    Sun Java System Directory Server 5.2
    Sun Java System Identity Server Policy Agent 2.1 for Microsoft IIS 5.0
    help me for that how config?
    what error ?
    thanks!

    Sorr for so many people faced the sam or similar issues. I just joined this support a short while. If you think any old problem which is still critical to you, please repost. We shall try our best to give you assistance. Jerry
    Here are some of tips for debugging Web agent.
    From the AMAgent.properties, are both IIS and AM are in the same domain? If they are not, then you need to use CDSSO. Also please check in AM, under "Service Configuration-> Platform -> Cookie Domains" , whether cookie is set for the entire domain which includes AM and IIS ("test.com") or just the AM machine name.
    Also check whether correct value for "Agent-Identity Server Shared Secret" is entered. This should be your internal ldap password (amldapuser). In the AMAgent.properties for the below property the password will be encrypted and assigned: "com.sun.am.policy.am.password".
    Could you also check if the Identity servver and the IIS web server are time synchronized. The problem may be that agent requests policy decisions and the response from server may be timed out due to non-syncrhonized clock.
    Don't forget to restart the whole IIS service using internet
    management console after making agent changes.
    Some of the common error codes:
    20: Application authentication failed. This occurs when Agent cannot sucessfully authenticate with Identity Server. This is mainly due to incorrect password for agent entered during agent installation. Please refer to another faq describing how to change password.
    7: Policy not found. This error occurs typically if there are no policies defined on Identity server for the given web server URL. Otherwise, there may be time skew between Identity Server and Agent. So, polices fetched from Identity Server is instantly flushed by Agent and attempted to refetch over and over again. This can be solved by running rdate or similar command to synchronize time between the two machines. It is recommended to run NNTP server syncrhonize times between your Identity systems.

  • Using IPs in Policy Agent fqdnMap puts agent/AM into loop

    We are running Access Manager (AM) 2005Q1 on Solaris. Our web servers protecting the content are Apache 1.3.29 with Policy Agent (PA) 2.1.
    Our environment uses multiple web server instances on the same physical Apache web server. The separate instances are either assigned different ports so they are accessible via the web_server_IP:port or separate instance IPs so they are accessible via instance_IP:80. We do not have separate DNs names assigned for each web server instance.
    For discussion purposes the web server host name is ws1.xyz.com and its IP is 10.1.1.1. The default web server is 10.1.1.1:80. Our 2nd web server instance is accessible via 10.1.1.1:81.
    If we try to access the 2nd instance via http://10.1.1.1:81/myapp the default action of PA is redirect the browser to http://ws1.xyz.com:81/myapp. Due to special logic in some of our apps the PA redirect breaks the application (it�s a long story).
    On separate tests I put the 2nd web server�s IP in the PA fqdnMap property as �valid|10.1.1.1� and �10.1.1.1|10.1.1.1� in order to try and prevent the initial PA redirect back to ws1.xyz.com:81. The user is properly directed to AM for authentication, however, after authentication there is a loop condition between PA and AM. My assumption is the loop is occurring because of a conflict between the IP used to access the web server and the cookie generated by AM. AM generates the cookie for the domain xyz.com. When the user is redirected back to http://10.1.1.1:81/myapp PA does not see a valid cookie and redirects the user back to AM. AM sees a valid cookie and redirects the user back to http://10.1.1.1:81/myapp hence the loop.
    My questions are:
    1. Does PA 2.1 support using IPs to access a web server instances?
    2. If so, how do I configure this capability?
    3. Would assigning separate IPs to each web server instance help? I assume assigning separate DNS to each instance would resolve the issue.
    4. Is there something I need to do on AM to allow using IPs in the manner described?

    this would only help if Access Manager and the policy agent receide on the same box.
    Agent redirects to an FQDN to get the SSO Token. By default it�s a domain cookie and the browser will only set it to FQDN which are "below" that DNS domain.
    To use IP-Addresses for the agent agent must use host-based cookies.
    Configure agent for CDSSO and specify the ip address in the fqdnMap (as you already did) - or if Agent 2.2 is used disabled FQDN checking.
    -Bernhard

  • Policy agent and normal portal logon on one portal

    We run a shared portal infrastructure and want to use multiple logon methods for accessing ESS MSS portal applications.
    Is it possible to logon via Policy Agent and with normal sap poral logon to the same application?

    We have 3 bespoke types of SSO logon methods, JAAS, SAML and PKI.
    This means users can logon via our bespoke SSO solutions or via the normal SAP standard delivered logon method with UID and password.
    Currently we are investigating if we can also implement the Sun policy agent as logon method for the Poral and WAS. It should run in parallel with our current solutions without harming them.

  • Custom Authentication Issue with Policy Agent

    Hi,
    I have a custom authentication module which is hosted on the BEA application server and I am trying to access through the policy agent on apache.
    I have set the following property in AMAgent.properties file
    com.sun.am.policy.am.loginURL= http://host:port/amserver/UI/Login
    So When the user requests a protected resource, the policy agent forwards the user to Identity Server with the module as CustomLoginModule. However, after this, authentication is succeed, user sesion is being created and I get the following error message in the agent log file.
    2004-10-19 16:20:26.908 Error 27620:e1140 PolicyEngine: am_policy_evaluate: InternalException in Service::construct_auth_svc with error message:Application authentication failed during service creation. and code:3
    2004-10-19 16:20:26.908 128 27620:e1140 RemoteLog: User unknown was denied access to http://hostname:port/weblogic/protapp/protected/a.html.
    2004-10-19 16:20:26.908 Error 27620:e1140 LogService: LogService::logMessage() loggedBy SSOTokenID is invalid.
    2004-10-19 16:20:26.909 Error 27620:e1140 all: am_log_vlog() failed with status AM_REMOTE_LOG_FAILURE.
    2004-10-19 16:20:26.909 -1 27620:e1140 PolicyAgent: URL Access Agent: access denied to unknown user
    The necessary policy object is already created in Identity Server. Please send your suggestions to fix this problem.
    Thanks
    Neeraj

    Hi Neeraj,
    I still have not been able to resolve that issue. Let me know If you find a solution for the same.
    Thanks,
    Srinivas

  • Load balancers with web servers & policy agents

    I have a pair of host machines, hostA and hostB, running multiple web server instances, portalA, portalB, contentA, contentB, serviceA, serviceB, etc.
    The two hosts, hostA and hostB, are sitting behind load balancers. ServiceA and serviceB must be protected by login and I have a policy agent installed on hostA and hostB for these two instances.
    The load balancers respond to https://service/* and forward requests to http://serviceA:3456/* or http://serviceB:3456/* depending on the host selected by round-robin.
    I've been told that serviceA and serviceB cannot be running on the default 443 port (although we could enable SSL if we wanted) in order to work nicely with the other web server instances that are behind the load balancers.
    The problem is that the policy agent knows that it is running as http://serviceA:3456/.
    The user makes a request to the load balancers for:
    https://service/protected.html
    The load balancer passes the request to:
    http://serviceA:3456/protected.html
    The agent sends a redirect to login which sends the user to:
    http://service:3456/protected.html
    This final URL is not available through the load balancers and it's obviously not the public URL.
    I have fqdnDefault set to 'service.x.x' so the URL is rewritten to that extent. Is there a way to tell the agent that the port it's running on is not the public port (ie. that it's behind a NAT device)? Is there a way to tell the agent that it's should actually redirect to https and not http?

    Hi,
    CQ authoring does not leverage server side sessions, therefor you'll never loose data because of this.
    But: As the cluster has a small delay on synchronisation, it could be, that on a write and subsequent read you'll get the old content, if you don't have sticky sessions (because both requests are not processed by the same server). Therefor I advise you to use sticky sessions in front of a CQ authoring cluster.
    Jörg

  • Setup-Problem while installing AM Policy Agent 2.1 on Solaris 10

    I'm new with AccessManager and try to get it working on Solaris 10 on a Sparc.
    I'm using LDAP-Server, WEB-Server 6.1 and AccessManager from the software-paket: "Sun Java System Access Manager 6 2005Q1" .
    While trying to install policy-agents on the Sparc (by starting setup program), I've got the message: "The installer ist intended for Solaris Operating System only".
    The agent-software I'm trying to install is "Access Manager Policy Agent 2.1 for Sun Java System Web Server 6.1" From there I choosed "Solaris SPARC 8".
    (so I've got the paket "S1WebServer_6[1].1_agent_2.1_sparc-sun-solaris2.8.tar.gz").
    In my opinion, it must be correct. Ist there anything i'done wronge?
    thanks, Paul

    Even when there is no agent available for Solaris 10 now:
    If you don't have any doubt to use an unsupported configuration, at
    least the apache agent is installable.
    You have to extract the packages "SUNWamapc" and "SUNWcom"
    from the tar-archive and install it using pkgadd.
    Then, you have to configure it manually ("include" in "httpd.conf",
    "AMAgent.properties").
    Maybe, it is possible to do something similiar with the agent for
    SUN webserver.
    Be aware that noone will guarantee that such unsupported
    installations won't raise any problems.
    Juergen

  • No ?goto= after Policy agent install. Need help urgently....

    Hi all,
    We have installed the Policy Agent successfully on a particular web server instance. But when we try to access the web server instance root
    i.e.
    https://abc.def.com
    1) We are not presented with the access manager login page.
    2) When we type the url https://abc.def.com/search i.e the default search application, we are presented with the Access Manager login page but, the URL in the Browser does not have the "?goto=https://abc.def.com "
    i.e. it does not look like
    http://accessmanagerUrl.ghi.com?goto=https://abc.def.com
    Our setup is as follows
    Policy agent domain: abc.def.com
    Access Manager domain: zyx.wvu.com
    Our webserver isntance is configured for SSL while the Access Manager is not on SSL.
    Can anyone help with this issue? Has something like this been reported on this forum before?

    which policy agent are you using? Can you turn debugging on the agent?

Maybe you are looking for

  • Excise invoice posted in J1iex without PO

    Hi Guru's,               Excise invoice posted in J1iex without PO and not able to cancel it. Its says excise invoice 123 for 2008 has been posted to vendor Tooa.Please help me to solve the problem. Please tell other than JV with other adjustment and

  • Filter warning and ascii save error

    Hello,       I am performing modal analysis using a impact hammer, USB NI 9233 cRIO DAQ and Sound and Vibration assistant. The steps have been set in Signal express as DAQ Acquire =>Trigger=>Filter=> Power spectrum => FRF => Save to Ascii.     I am f

  • Instant Client for Win32 and ODBC Application

    Hi. I just want to know how will Instant Client handle an ODBC Data Source in Windows 9X/2000/XP. Will it be a new ODBC Driver?, Can developers like me ship that "driver" with the application so that the end user could just open the application and u

  • No signal or weak signal samsung

    I have my appletv hooked up via hdmi to my samsung dlp hlr5667w tv and I keep getting a "no signal or weak signal" message.  Why can't my tv find the Apple TV signal?   I do not have any other splitters or devices hooked up and I have the same issue

  • IPhone: Size of buttons and/or button titles in UIAlertView...

    Hello all, I'm trying to give my users a few bits of info about how to use different options of my app through an AlertView. I want them to be able to decide to NOT have this AlertView show up again. I know how to do this, but my problem is one of Us