The shiro cas client works just nicely with the v3 protocol; have been
using it since last summer to push attributes down to client. Tested
both SAML and CAS v3; both worked but went with v3 since it's a much
thinner stack.
John
RedZone Software
On 1/7/2016 4:05 PM, Dmitriy Kopylenko wrote:
Attributes are exposed by CAS in the ticket validation response via
SAML response and CAS protocol v3 response (only in CAS4). Most likely
the shiro cas client does not (yet) implement CAS protocol v3, hence
only SAML.
Cheers,
D.
On Jan 7, 2016, at 11:02 AM, Jonathan Labin <[email protected]
<mailto:[email protected]>> wrote:
I see that the shiro docs state
attributes and remember me information are only pushed throught
the SAML validation procotol (except specific customizations)
But aren't they pushed through the CAS protocol too?
Or does this mean that the shiro-cas client can only pull them from
SAML and not the CAS protocol?
In theory could the shiro-cas client be modified to pull attributes
from the CAS protocol without SAML?
On Saturday, December 26, 2015 at 7:14:49 AM UTC-5, Dmitriy Kopylenko
wrote:
Not necessary at all. You could've simply switched Shiro's CAS ST
validation mode to SAML like so:
casRealm.validationProtocol=SAML
http://shiro.apache.org/cas.html <http://shiro.apache.org/cas.html>
Note: CAS v4 requires explicit enablement of SAML support.
Cheers,
Dmitriy.
Sent from my iPhone
On Dec 25, 2015, at 10:42, rono <[email protected] <javascript:>>
wrote:
OK!!!!
i,m solve the problem
edit
cas-server-webapp\src\main\webapp\WEB-INF\view\jsp\protocol\2.0\casServiceValidationSuccess.jsp
<%@ page session="false" contentType="text/xml; charset=UTF-8"
%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core
<http://java.sun.com/jsp/jstl/core>" %> <%@ taglib
uri="http://java.sun.com/jsp/jstl/functions
<http://java.sun.com/jsp/jstl/functions>" prefix="fn" %>
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas
<http://www.yale.edu/tp/cas>'
xmlns:gtx="http://www.gentics.com/sso/cas/xmlns
<http://www.gentics.com/sso/cas/xmlns>">
<cas:authenticationSuccess>
<cas:user>${fn:escapeXml(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.id
<http://principal.id/>)}</cas:user> <cas:attributes> <c:forEach var='item'
items='${assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes}'>
<gtx:${item.key}>${item.value}</gtx:${item.key}>
</c:forEach> </cas:attributes> <c:if test="${not empty pgtIou}"> <cas:proxyGrantingTicket>${pgtIou}</cas:proxyGrantingTicket> </c:if> <c:if
test="${fn:length(assertion.chainedAuthentications) >1}"> <cas:proxies> <c:forEach var="proxy" items="${assertion.chainedAuthentications}" varStatus="loopStatus" begin="0"
end="${fn:length(assertion.chainedAuthentications)-2}" step="1"> <cas:proxy>${fn:escapeXml(proxy.principal.id <http://proxy.principal.id/>)}</cas:proxy> </c:forEach> </cas:proxies> </c:if>
</cas:authenticationSuccess> </cas:serviceResponse>
On Wednesday, December 23, 2015 at 2:30:36 PM UTC+8, Misagh
Moayyed wrote:
Study:
http://jasig.github.io/cas/4.1.x/protocol/CAS-Protocol-Specification.html#p3servicevalidate-cas-30
<http://jasig.github.io/cas/4.1.x/protocol/CAS-Protocol-Specification.html#p3servicevalidate-cas-30>
http://jasig.github.io/cas/4.1.x/integration/Attribute-Release.html
<http://jasig.github.io/cas/4.1.x/integration/Attribute-Release.html>
*From:*[email protected] [mailto:[email protected]] *On
Behalf Of *jason *Sent:* Tuesday, December 22, 2015 11:20 PM
*To:* CAS Community <[email protected]> *Subject:*
[cas-user] how to get shiro roles and permissions attributes
from cas server
when i use shiro-cas client buile web application i want to
get shiro roles and permissions attributes from cas server
the cas server:
i custom a AttributeDao to response roles and permissions info
public class BlogStubPersonAttributeDao extends
StubPersonAttributeDao {
@Override
public IPersonAttributes getPerson(String uid) {
Map<String, List<Object>> attributes = new
HashMap<String, List<Object>>();
attributes.put("userid",
Collections.singletonList((Object)uid));
attributes.put("roles",
Collections.singletonList((Object)"role_admin"));
attributes.put("permissions",
Collections.singletonList((Object)"user:create"));
attributes.put("test",
Collections.singletonList((Object)"test"));
return new AttributeNamedPersonImpl(attributes);
}
}
and *deployerConfigContext.xml*
<bean
id="attributeRepository"class="org.jasig.services.persondir.support.BlogStubPersonAttributeDao" />
cas client use shiro
1.<bean id="casRealm"*class*="org.apache.shiro.cas.CasRealm">
2. <property name="defaultRoles" value="admin,user"/>
3. <property name="defaultPermissions"
value="user:create,user:update"/>
4. <property name="roleAttributeNames" value="roles"/>
5. <property name="permissionAttributeNames"value="permissions"/>
6. <property name="casServerUrlPrefix"
value="https://localhost:8443/chapter14-server
<https://localhost:8443/chapter14-server>"/>
7. <property name="casService"
value="https://localhost:9443/chapter14-client/cas
<https://localhost:9443/chapter14-client/cas>"/>
8.</bean>
but the cas server can not response roles and permissions so
how to get shiro roles and permissions attributes from cas
server when i used below
https://github.com/apache/shiro/blob/1.2.x/support/cas/src/main/java/org/apache/shiro/cas/CasRealm.java#L162
<https://github.com/apache/shiro/blob/1.2.x/support/cas/src/main/java/org/apache/shiro/cas/CasRealm.java#L162>
-- You received this message because you are subscribed to
the Google Groups "CAS Community" group. To unsubscribe from
this group and stop receiving emails from it, send an email
to [email protected]. Visit this group at
https://groups.google.com/a/apereo.org/group/cas-user/
<https://groups.google.com/a/apereo.org/group/cas-user/>.
-- You received this message because you are subscribed to the
Google Groups "CAS Community" group. To unsubscribe from this
group and stop receiving emails from it, send an email to
[email protected] <javascript:>. Visit this group at
https://groups.google.com/a/apereo.org/group/cas-user/
<https://groups.google.com/a/apereo.org/group/cas-user/>.
-- You received this message because you are subscribed to the Google
Groups "CAS Community" group. To unsubscribe from this group and stop
receiving emails from it, send an email to
[email protected]
<mailto:[email protected]>. Visit this group at
https://groups.google.com/a/apereo.org/group/cas-user/.
--
This transmission contains confidential information intended solely for the
party identified above. If you receive this message in error, you must not
use it or convey it to others. Please destroy it immediately and contact
the sender at (303) 386-3955 or by return e-mail to the sender.
--
You received this message because you are subscribed to the Google Groups "CAS
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/a/apereo.org/group/cas-user/.