<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 175  文章 - 202  trackbacks - 0
    <2010年1月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    31123456

    第一個Blog,記錄哈哈的生活

    常用鏈接

    留言簿(16)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    收藏夾

    Java links

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    接著上一個的jira 4.0.1 war 方式的安裝過程,使用mysql,把jira的login加上crowd,為之后增加confluence和svn的sso做準備

    第一步先把jira的認證改成使用crowd,接著上次安裝完jira的tomcat,繼續安裝

    1. 準備mysql
      a)創建一個庫create database crowd character set utf8;
      b)在my.ini中增加一行
      [mysqld]
      transaction-isolation = READ-COMMITTED
    2. 準備tomcat
      a)修改$catalina_home\conf\server.xml,增加useBodyEncodingForURI="true",如下:
      <Connector port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" useBodyEncodingForURI="true"/>
      b)下載javamail api,放到$catalina_home\lib目錄下
    3. 準備crowd
      a)下載atlassian-crowd-2.0.3-war.zip,并解壓到$crowd_home
      b)修改$crowd_home\WEB-INF\classes\crowd-init.properties,增加配置crowd.home=$crowd_home($crowd_home替換成實際目錄)
      c)創建crowd.xml,內容為<Context path="/crowd" docBase="$crowd_home" reloadable="false"/>($crowd_home替換成實際目錄),將這個文件放到$catalina_home\conf\Catalina\localhost目錄下
      d)啟動tomcat,進入crowd,如:http://localhost:8080/crowd
      e)到applications中add application,類型選jira,name: jira, password: haha, url: http://localhost:8080/jira, ip最好手工填, directories選一個需要的,Allow all users to authenticate我選上了,成功
      f)import jira users在users里面選import users,import 的時候注意把dbname修改為jiradb就可以了。
    4. 準備jira
      a)修改$jira_home\WEB-INF\classes\crowd.properties,如
      application.name                        jira
      application.password                    haha
      application.login.url                   http://hostname/jira/
      crowd.server.url                        http://hostname/crowd/services/
      ...
      其它的不需要修改
      b)修改$jira_home\WEB-INF\classes\osuser.xml,內容如下:

    <!-- This is where JIRA's credentials checking can be configured.  For instance, see
    http://www.atlassian.com/software/jira/docs/latest/ldap.html 
    -->
    <opensymphony-user>

        
    <authenticator class="com.opensymphony.user.authenticator.SmartAuthenticator" />

    <!-- CROWD:START
        You will need to uncomment the Crowd providers below to enable Crowd integration
        and comment out the default providers that are located further down in this file.
    -->
        
    <provider class="com.atlassian.crowd.integration.osuser.CrowdCredentialsProvider"/>
        
    <provider class="com.atlassian.crowd.integration.osuser.CrowdAccessProvider"/>
        
    <provider class="com.atlassian.crowd.integration.osuser.DelegatingProfileProvider">
            
    <property name="provider-1">com.atlassian.crowd.integration.osuser.CrowdProfileProvider</property>
            
    <property name="provider-2">com.atlassian.jira.user.ExternalEntityJiraProfileProvider</property>
            
    <property name="provider-2-exclusive-access">true</property>
        
    </provider>
    <!-- CROWD:END -->

    <!-- CROWD:START  - The providers below here will need to be commented out for Crowd integration -->
    <!--
        <provider class="com.atlassian.core.ofbiz.osuser.CoreOFBizCredentialsProvider">
            <property name="exclusive-access">true</property>
        </provider>

        <provider class="com.atlassian.jira.user.osuser.JiraOFBizProfileProvider">
            <property name="exclusive-access">true</property>
        </provider>

        <provider class="com.atlassian.jira.user.osuser.JiraOFBizAccessProvider">
            <property name="exclusive-access">true</property>
        </provider>
    -->
    <!-- CROWD:END -->

    </opensymphony-user>

      c)修改$jira_home\WEB-INF\classes\seraph-config.xml,內容如下:

    <security-config>
        
    <parameters>
            
    <init-param>
                
    <!--
                  The login URL to redirect to when the user tries to access a protected resource (rather than clicking on
                  an explicit login link). Most of the time, this will be the same value as 'link.login.url'.
                    - if the URL is absolute (contains '://'), then redirect that URL (for SSO applications)
                    - else the context path will be prepended to this URL

                    If '${originalurl}' is present in the URL, it will be replaced with the URL that the user requested.
                    This gives SSO login pages the chance to redirect to the original page
                
    -->
                
    <param-name>login.url</param-name>
                
    <param-value>/login.jsp?os_destination=${originalurl}</param-value>
                
    <!--<param-value>http://sso.mycompany.com/login?redirectTo=${originalurl}</param-value>-->
            
    </init-param>
            
    <init-param>
                
    <!--
                  the URL to redirect to when the user explicitly clicks on a login link (rather than being redirected after
                  trying to access a protected resource). Most of the time, this will be the same value as 'login.url'.
                    - same properties as login.url above
                
    -->
                
    <param-name>link.login.url</param-name>
                
    <param-value>/login.jsp?os_destination=${originalurl}</param-value>
                
    <!--<param-value>/secure/Dashboard.jspa?os_destination=${originalurl}</param-value>-->
                
    <!--<param-value>http://sso.mycompany.com/login?redirectTo=${originalurl}</param-value>-->
            
    </init-param>
            
    <init-param>
                
    <!-- URL for logging out.
                     - If relative, Seraph just redirects to this URL, which is responsible for calling Authenticator.logout().
                     - If absolute (eg. SSO applications), Seraph calls Authenticator.logout() and redirects to the URL
                     
    -->
                
    <param-name>logout.url</param-name>
                
    <param-value>/secure/Logout!default.jspa</param-value>
                
    <!--<param-value>http://sso.mycompany.com/logout</param-value>-->
            
    </init-param>
            
    <!-- The key that the original URL is stored with in the session -->
            
    <init-param>
                
    <param-name>original.url.key</param-name>
                
    <param-value>os_security_originalurl</param-value>
            
    </init-param>
            
    <init-param>
                
    <param-name>login.cookie.key</param-name>
                
    <param-value>seraph.os.cookie</param-value>
            
    </init-param>
            
    <!-- This property controls how your cookie is encrypted.  If you truly want to secure your cookies, you need
                to change this to a secure password 
    -->
            
    <init-param>
                
    <param-name>cookie.encoding</param-name>
                
    <param-value>jiracookie</param-value>
            
    </init-param>
            
    <!-- This property sets the default cookie timeout in seconds.  It is currently set to 1 year -->
            
    <init-param>
                
    <param-name>autologin.cookie.age</param-name>
                
    <param-value>31536000</param-value>
            
    </init-param>
            
    <!-- Basic Authentication can be enabled by passing the authentication type as a configurable url parameter.
            With this example, you will need to pass http://mycompany.com/anypage?os_authType=basic in the url to enable Basic Authentication 
    -->
            
    <init-param>
                
    <param-name>authentication.type</param-name>
                
    <param-value>os_authType</param-value>
            
    </init-param>
            
    <!--  If this parameter is set to true, the cookie will never be set secure.  This is useful if you're logging
                  into JIRA via https, but want to browse JIRA over http.  This flag will ensure that the remember me option
                  works correctly.
            <init-param>
                <param-name>insecure.cookie</param-name>
                <param-value>true</param-value>
            </init-param> 
    -->
        
    </parameters>

        
    <rolemapper class="com.atlassian.jira.security.JiraRoleMapper"/>

        
    <!-- CROWD:START - If enabling Crowd SSO integration uncomment the following JIRAAuthenticator and comment out the DefaultAuthenticator below -->
        
    <authenticator class="com.atlassian.crowd.integration.seraph.JIRAAuthenticator"/>
        
    <!-- CROWD:END -->

        
    <!-- CROWD:START - The authenticator below here will need to be commented out for Crowd SSO integration -->
        
    <!--
        <authenticator class="com.atlassian.jira.security.login.JiraOsUserAuthenticator"/>
        
    -->
        
    <!-- CROWD:END -->

        
    <!-- NB: the URL to redirect to is now specified by login.url above -->
        
    <services>
            
    <service class="com.atlassian.seraph.service.PathService">
                
    <init-param>
                    
    <param-name>config.file</param-name>
                    
    <param-value>/seraph-paths.xml</param-value>
                
    </init-param>
            
    </service>

            
    <service class="com.atlassian.seraph.service.WebworkService">
                
    <init-param>
                    
    <param-name>action.extension</param-name>
                    
    <param-value>jspa</param-value>
                
    </init-param>
            
    </service>
        
    </services>

        
    <interceptors>
            
    <interceptor class="com.atlassian.jira.portal.PortalPageInterceptor"/>
            
    <interceptor class="com.atlassian.jira.user.preferences.UserPreferencesResetInterceptor"/>
        
    </interceptors>
    </security-config>

      d)重啟tomcat

    一切搞定,可以使用crowd的用戶登錄jira了,而且只要在一邊登錄,兩邊就都登錄了。


    另外把遇到的問題寫一下
    1. 在crowd中import jira users的時候,將connection url改正確了之后,就是把dbname改成jiradb,依然無法連接,后來發現是crowd沒有mysql jdbc驅動,停掉crowd,將mysql jdbc驅動放到crowd WEB-INF\lib目錄,重試就可以了。
    2. 所有的都配置好了之后,到jira里面仍然無法登錄,通過查看crowd log,發現有這句話[crowd.service.soap.SOAPService] Client host is invalid: 10.40.155.43 / 10.40.155.43,明白了,因為在crowd里面add application的時候,使用的是自動得到IP,得到的是127.0.0.1。解決這個問題的辦法就是在IP里面,把這個10.40.155.43也加上,就可以了。

    posted on 2010-01-22 15:27 哈哈的日子 閱讀(7029) 評論(2)  編輯  收藏

    FeedBack:
    # re: 集成 JIRA 和 CROWD 用戶認證 2010-03-18 23:00 FF
    哈哈,我配置的時候需要license key。你那有這樣的問題嗎?  回復  更多評論
      
    # re: 集成 JIRA 和 CROWD 用戶認證 2010-11-09 17:00 詹平
    向你請教Crowd 單點登錄問題。

    我用Crowd 做Jira與Confluence的整合,按照官方文檔配置后,Confluence可使用Jira的用戶了,但是單點登錄不能實現(登錄Jira后,再打開Confluence網站,仍然需要輸入一次用戶名和密碼,不能自動登錄)。

    我使用的軟件版本:Jira 4.0.1,Confluence 3.3,Crowd 2.0.7 。

    整合步驟:

    1.在Crowd 中新建名為Jira_Confluence的目錄;

    2.Import users 將Jira中的用戶導入到Jira_Confluence中;

    3.新建Jira應用,Directories使用Jira_Confluence;

    4.新建confluence-users和confluence-administrators組,Directory選擇Jira_Confluence,并向組中加入jira用戶;

    5.新建Confluence應用,Directories使用Jira_Confluence;

    6.配置Jira,將Crowd目錄\client下的crowd-integration-client-2.0.7.jar拷貝到Jira安裝目錄\WEB-INF\lib下;

    7.將Crowd 安裝目錄\client\conf下的crowd.properties和crowd-ehcache.xml覆蓋Jira安裝目錄\WEB-INF\classes下的相應文檔;

    8.按照官方文檔依次配置crowd.properties、osuser.xml、propertyset.xml和seraph-config.xml,然后重啟Jira;

    9.配置Confluence,將Crowd目錄\client下的crowd-integration-client-2.0.7.jar拷貝到Confluence安裝目錄\WEB-INF\lib下;

    7.將Crowd 安裝目錄\client\conf下的crowd.properties和crowd-ehcache.xml覆蓋Confluence安裝目錄\WEB-INF\classes下的相應文檔;

    8.按照官方文檔依次配置crowd.properties、atlassian-user.xml和seraph-config.xml,然后重啟Conluence 。



    幫我看看是什么地方出錯了,謝謝!

      回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
    博客園   IT新聞   Chat2DB   C++博客   博問  
     
    主站蜘蛛池模板: 又爽又高潮的BB视频免费看| 无码人妻一区二区三区免费视频| 另类图片亚洲校园小说区| 亚洲国产成人乱码精品女人久久久不卡 | 亚洲欧洲免费视频| 亚洲色大成网站www久久九| 亚洲情侣偷拍精品| 97人妻无码一区二区精品免费| 亚洲电影国产一区| 日韩高清在线免费看| 成全高清在线观看免费| 亚洲人av高清无码| 国产一级一片免费播放i| 亚洲av无码专区国产不乱码| 人人狠狠综合久久亚洲88| 热99re久久免费视精品频软件| 在线观看黄片免费入口不卡| 亚洲中文字幕久久精品无码APP| 成人免费福利视频| 国产免费区在线观看十分钟 | 亚洲精品偷拍无码不卡av| 亚洲AV无码不卡在线观看下载| 1000部无遮挡拍拍拍免费视频观看 | 国产精品亚洲片在线va| 免费激情视频网站| 日韩免费无码一区二区三区| 一级做a爰片性色毛片免费网站 | 亚洲成人黄色在线观看| 亚洲一区二区三区偷拍女厕 | 亚洲成av人片在线天堂无| 国产老女人精品免费视频| 污视频网站免费在线观看| 亚洲精品亚洲人成在线观看下载| 美女视频黄免费亚洲| 男人j进入女人j内部免费网站| gogo免费在线观看| 亚洲综合婷婷久久| 美女视频黄的全免费视频| 久久这里只精品热免费99| 青柠影视在线观看免费高清| 一级做a爰片性色毛片免费网站|