Markus Pfeilerã®Zammadã®é¡ãïŒ
ãplsã¯äœããã®LDAPèªèšŒãã©ã°ã€ã³/çµ±åãæäŸããŸããããã§ãªãå Žåããã±ããã·ã¹ãã ãäœã«ã䜿çšã§ããŸãã:( Facebookããã³Googleã¢ã«ãŠã³ãã¯ãåŸæ¥å¡ã10人ãè¶
ããäŒæ¥ã§ã¯ãªãã·ã§ã³ã§ã¯ãããŸãããçæ³çã«ã¯ããããã®ãã£ãã«ã¯æåã«ãããã¯ãããŸããæ£åœãªçç±ã§é²è¡ç·:)ã
ããã¯ïŒ58ã®è€è£œã§ããïŒ
@wagnstããã¯æ°ããåé¡ã§ããïŒ58ã¯å€ãããã§ã«ã¯ããŒãºãããŠããŸãã
泚ïŒLDAPçµ±åãå«ã2017幎第1ååæã®ããšã³ã¿ãŒãã©ã€ãºå¯Ÿå¿ãæ©èœã«åãçµãã§ããŸãã ä¹ããæåŸ ã
@rolfschmidtå€åOAuth2ã䜿çšããADFSã¯çæçãªãœãªã¥ãŒã·ã§ã³ã§ã
ããã«é¢ãããã¥ãŒã¹ã¯ãããŸããïŒ
LDAPãµããŒãã¯çŽ æŽãããã§ãããã ãããã®æ©èœããã€è¡šç€ºãããããããã³ä»ã«ã©ã®ãããªãšã³ã¿ãŒãã©ã€ãºæ©èœãå®è£ ãããŠãããã«ã€ããŠã®æŽæ°ã¯ãããŸããïŒ
é£çµ¡ãã£ãïŒ 2017幎ã®ç¬¬1ååæã¯ãæåŸã®æ°æ¥éã«ãªããŸã:)
4æã®ã¢ããããŒãã§ãããå
¥æãããã£ã³ã¹ã¯ãããŸããïŒ
ã¯ãããã®æ©èœã¯çŽ æŽãããã§ãããïŒ
ç§ãã¡ã¯çŽ4000人ã®ãŠãŒã¶ãŒãš50人ã®ãšãŒãžã§ã³ããæã€çµç¹ã§ãããOTRSãZammadã«çœ®ãæããããšãèšç»ããŠããŸãã ããããLDAPèªèšŒããªããã°æå³ããããŸããã
å°ããªæŽæ°ã§ãããã¹ãç¶æ ã§ãã å°ãªããšãã次ã®ãªãªãŒã¹ã§å©çšå¯èœãªããŒã¿ãã¹ãLDAPçµ±åããããŸãïŒãããŠãã®ãªãªãŒã¹ä»¥éãç§ãã¡ã¯ãããå®å®ãšåŒã³ãŸãïŒã
ããã䜿çšããæ¹æ³ã«ã€ããŠã®å°ããªãã¬ãã¥ãŒïŒãã£ãŒãããã¯ã¯å€§æè¿ã§ã-ç§ãã¡ã¯ãããã§ããã ãç°¡åã«ããããã«åªããŸããïŒLDAPèšå®ã®èªåæ€åºã§ïŒ-Zammadã®æ¹æ³ïŒïŒ
@bchynds
LDAPãµããŒãã¯çŽ æŽãããã§ãããã ãããã®æ©èœããã€è¡šç€ºãããããããã³ä»ã«ã©ã®ãããªãšã³ã¿ãŒãã©ã€ãºæ©èœãå®è£ ãããŠãããã«ã€ããŠã®æŽæ°ã¯ãããŸããïŒ
ãšã³ã¿ãŒãã©ã€ãºæ©èœïŒæãéèŠãªãã®ã¯åœ¹å²ç®¡çã§ãïŒãããŠä»ã®äººã¯äžåšã亀æã®ãããªãã®ã§ãïŒã
ããããã ã å©çšå¯èœã«ãªã£ããã25kãŠãŒã¶ãŒã§ããããã¹ãããããšã楜ãã¿ã«ããŠããŸãã
ããããã ã å©çšå¯èœã«ãªã£ããã25kãŠãŒã¶ãŒã§ããããã¹ãããããšã楜ãã¿ã«ããŠããŸãã
ð
ããã«ã¡ã¯ã
LDAPã䜿çšããæ¢åã®ãšãŒãžã§ã³ããŠãŒã¶ãŒã®ç§»è¡/ããŒãžã¯ãããŸããïŒ
LDAPã䜿çšããæ¢åã®ãšãŒãžã§ã³ããŠãŒã¶ãŒã®ç§»è¡/ããŒãžã¯ãããŸããïŒ
æ¢åã®ãŠãŒã¶ãŒãèå¥ããã«ã¯ãæ¢åã®ãŠãŒã¶ãŒããŒã¹ã§ãã°ã€ã³ãšé»åã¡ãŒã«ã¢ãã¬ã¹ãæ€çŽ¢ããŸãïŒãã®ãã¡ã®1ã€ãäžèŽããå¿ èŠããããŸãïŒã
ããã
LDAPçµ±åãdelevopãã©ã³ãã«ããããšã«æ°ã¥ããŸããã çŸåšããã¹ãã¢ãŒãã§ããæå®ãããæ§æã§ãšã³ããªãåæããŠããŸã...ãã«çŽ10åéåãçµãã§ããŸãã
ããããADã«ã¯çŽ25,000人ã®ãŠãŒã¶ãŒãããŸãã å°ãåŸ ã¡ãŸãã
@ Julian0oããªãã¯éãç·ã§ãïŒ
çŸåšããã¹ãã¢ãŒãã§ããæå®ãããæ§æã§ãšã³ããªãåæããŠããŸã...ãã«çŽ10åéåãçµãã§ããŸãã
ã¹ã±ãžã¥ãŒã©ãŒã¯èµ·åããŠããŸããïŒ 9kãŠãŒã¶ãŒã®ãã¹ãç°å¢ã§ã¯ãçŽ60ç§ããããŸãã
PSïŒ rails r 'Delayed::Worker.new.work_off'
ã䜿çšããŠããã¥ãŒã«å
¥ããããããã¯ã°ã©ãŠã³ããžã§ããæåã§éå§ããããšãã§ããŸã
-ããŒãã£ã³
ç§ã¯éãããŸãã:)管çè ã®åœ¹å²ãæå®ããã®ãå¿ããŠãä»ã¯æ®éã®ãŠãŒã¶ãŒã§ã:)
@ããã£ãŒã
ãããä¿®æ£ããããã®ã¢ããã€ã¹ã¯ãããŸããïŒ ç§ã¯ä»OTRSConfig.pmãéããŠããŸãïŒD
管çè ã®åœ¹å²ãåãæ»ãã«ã¯ã次ã®ããã«ããŸãã
rails c
u = User.find_by(email: '[email protected]')
u.roles = Role.where(name: ['Agent', 'Admin'])
u.save!
ãã®åŸãå床ãã°ã€ã³ãããšã管çè ã«ãªããŸãã
ããããšãïŒ ä»åºŠã¯2åç®ã§ã;ïŒ
PSïŒã³ãŒããæ·±ã調ã¹ãã«ãããã®ã³ãã³ããååŸããæ¹æ³ã¯ãããŸããïŒ
PSïŒã³ãŒããæ·±ã調ã¹ãã«ãããã®ã³ãã³ããååŸããæ¹æ³ã¯ãããŸããïŒ
ã»ãšãã©ãRailsã®æšæºã³ãã³ãã§ãã ããããããããèã®å·»ãäœæããå¿ èŠããããŸãã
åæåæã«ã¯çŽ10åããããŸããã
ä»ãç§ã¯ãšã©ãŒãåãåããŸãïŒ
An error occurred: Can't connect to '' on port '389', Connection refused - connect(2) for 127.0.0.1:389
LDAPãã¹ããæ§æãããŠããŸãist" ldapsïŒ//xxx.lan "
ç·šéïŒ5ã€ã®IPã¢ãã¬ã¹ãé ããŠããDNSã¢ãã¬ã¹ã§ã¯ãªããã¹ããªãã¯ã®IPã¢ãã¬ã¹ã§2åç®ã®è©Šè¡ãè¡ããŸãã
log / Production.logãååŸããããšã¯å¯èœã§ããïŒ
@martiniãã°ãããªãã®mailadressã«éãããšãã§ããŸãã ã©ãã«è¡ãã°ããã®ïŒ
@martiniãã°ãããªãã®mailadressã«éãããšãã§ããŸãã ã©ãã«è¡ãã°ããã®ïŒ
zammadãããã³ã ã§ã®ãµããŒã
ããŠãããã§åäœããåæãé²è¡äžã§ãã 45åã6k/22kãšåæããããã«ãªããŸããã
OTRSã¯ãŠãŒã¶ãŒãåæããŸããïŒ
ãããããªãuidãããã³ã°ãå€æŽã§ããªãã®ã§ããïŒ ãšãŒãžã§ã³ãã®ãã°ã€ã³ãããã³ã°ã«ã¯userprincipalnameã䜿çšããŸãã
ãããŠããªãç§ã¯ç®¡çè ãšãšãŒãžã§ã³ããã圹å²ããšããŠãããããã§ããªãã®ã§ããã 圹å²ç®¡çãæ¬ èœããŠããã ãã§ããããããšããããæçµçãªåœ¹å²ç®¡çã§ããïŒ
ããŠãããã§åäœããåæãé²è¡äžã§ãã 45åã6k/22kãšåæããããã«ãªããŸããã
ã¡ãªã¿ã«ããããé«éåããããã«åãçµãã§ããŸãïŒçŽ3åé«éïŒã
OTRSã¯ãŠãŒã¶ãŒãåæããŸããïŒ
ãšãŒãžã§ã³ãïŒããã³åœ¹å²ã®å²ãåœãŠïŒã¯OTRSã§åæãããŸãã 顧客ã§ã¯ãªããåé¡ãçºçããŸãã
aïŒé¡§å®¢ãLDAPããåé€ãããå ŽåïŒå±¥æŽãšãªããžã§ã³ã®åé¡ïŒ
bïŒé¡§å®¢å±æ§ãä»ããŠãã±ãããæ€çŽ¢ãã-æŠèŠãããªã¬ãŒã顧客å±æ§ãæã€SLAã¯ãããŸããïŒããŒã¿ã¯æå°2ã®ããŒã¿ãœãŒã¹ã«ããããäžå¯èœã§ãïŒ
cïŒLDAPã¯ãšãªã®ããã©ãŒãã³ã¹ã®åé¡ïŒãããã¯ãŒã¯ã«é¢é£ããå ŽåããããŸãïŒ
ãããããªãuidãããã³ã°ãå€æŽã§ããªãã®ã§ããïŒ ãšãŒãžã§ã³ãã®ãã°ã€ã³ãããã³ã°ã«ã¯userprincipalnameã䜿çšããŸãã
çŸåšããã¹ãŠã®èšå®ãèªåæ€åºããããšããŠããŸãã æ§æèšå®ãæ¹å/匷åããæ¹æ³ã«ã€ããŠã¢ã€ãã¢ãããå Žåã
ãããŠããªãç§ã¯ç®¡çè ãšãšãŒãžã§ã³ããã圹å²ããšããŠãããããã§ããªãã®ã§ããã 圹å²ç®¡çãæ¬ èœããŠããã ãã§ããããããšããããæçµçãªåœ¹å²ç®¡çã§ããïŒ
圹å²ã®ç®¡çã¯æ¬¡ã®ãªãªãŒã¹ã§è¡ãããŸãïŒããã§ã¯ãæš©éã䜿çšããŠåœ¹å²ãå®çŸ©ã§ããŸãïŒã ã€ã³ã¹ããŒã«ïŒããã±ãŒãžã€ã³ã¹ããŒã«ïŒã§ãã¹ãããå Žåã¯ã httpsïŒ//raw.githubusercontent.com/zammad/zammad/develop/app/assets/javascripts/app/controllers/role.coffeeãããŠã³ããŒãããŠãã¢ã»ãããå床ããªã³ã³ãã€ã«ããŸãã
ããããŸãããããã¯çã«ããªã£ãŠããŸãã
samaccountnameãšMailãä»ããŠãã°ã€ã³ã§ããããšã«æ°ã¥ããŸããã ããã¯è¯ãè¡åã§ãïŒ ç§ãã¡ã«ãšã£ãŠïŒUPN = Mailadress
åææéã¯åé¡ã§ã¯ãªããšæããŸããæéããããã®ã¯æåã®åæã ãã ããã§ãã
ã¿ã°ã®èªåæ€åºã«é¢ããã¢ããã€ã¹ã ç§ãã¡ã¯å€ãã®ãã€ã¯ããœãããµãŒãã¹ã䜿çšããŠããŸãïŒããžãã¹ã亀æãªã©ã®ã¹ã«ã€ãïŒã ããã©ã«ãã§ã¯ããmsãã§å§ãŸããã¹ãŠã®å±æ§ãé€å€ã§ããŸãã Zammadã®ãŠãŒã¶ãŒã®äº€ææ§æãsipèšå®ã¯å¿
èŠãããŸããïŒç§ã¯æããŸãïŒã ããã¯ãã¹ãŠãã¹ããŒãã¢ããããå¯èœæ§ããããŸãã
ç§ã®ãŠãŒã¶ãŒã¢ã«ãŠã³ãã«ã¯çŽ45ããªç§ã®å±æ§ããããŸãã
ããŒã«ãã©ã°ã€ã³ã«ã€ããŠã¯ãè¿œå æ å ±ãŸãã¯ã°ãŒã°ã«ãå¿ èŠã§ã;ïŒãã¡ã€ã«ãã¢ããããŒãããŸããããã¢ã»ãããããªã³ã³ãã€ã«ããæ¹æ³ãããããŸããã
ç·šéïŒããŒã«ãã©ã°ã€ã³ãã€ã³ã¹ããŒã«ããè¯ãæ¹æ³ãæããŠãã ããïŒ
çªç¶åæãåæ¢ããŸãã...ãã§ã«ãã¹ãŠã®ãµãŒãã¹ãšãµãŒããŒãå®å šã«åèµ·åããŸããã åæãåéããããã®ã¢ããã€ã¹ã¯ãããŸããïŒ
ãã§ã«rails r 'Delayed::Worker.new.work_off'
ããŸãã
æŽæ°ïŒZammadã¯ããèªäœã§æåããŸããïŒ ð
åŸ
ã£ãŠãçªç¶åæãçµäºããŸããïŒ
åæããŠã³ããŒãåçã¯ActiveDirectoryã«ãããŸããïŒ ããããthââumbnailPhotoå±æ§ã«ä¿åããŸãã
次ã®è³ªåïŒåæã¯ã©ã®ãããã®é »åºŠã§å®è¡ãããŸããïŒ ä»ã§ã¯24æéåŸãæ°ããåæã¯ãããŸããã§ããã
åæããŠã³ããŒãåçã¯ActiveDirectoryã«ãããŸããïŒ ããããthââumbnailPhotoå±æ§ã«ä¿åããŸãã
ä»ãããªããä»ã¯ã ããªã®ã ããããè¯ãèãã§ãïŒ
次ã®è³ªåïŒåæã¯ã©ã®ãããã®é »åºŠã§å®è¡ãããŸããïŒ ä»ã§ã¯24æéåŸãæ°ããåæã¯ãããŸããã§ããã
ã¹ã±ãžã¥ãŒã©ããŒãã«ã«1æéããšã«åæãéå§ãããžã§ãããããŸãïŒãã¡ãããscript / scheduler.rbãå®è¡ãããŠããå¿ èŠããããŸãïŒã
Railsã³ã³ãœãŒã«ãä»ããŠãžã§ããååšãããã©ããã確èªããŸãã
Scheduler.where(name: 'Import Jobs')
ãžã§ããïŒåïŒäœæããã«ã¯ã次ã®ããã«ããŸãã
Scheduler.create_or_update(
name: 'Import Jobs',
method: 'ImportJob.start_registered',
period: 1.hour,
prio: 1,
active: true,
updated_by_id: 1,
created_by_id: 1
)
=>ïŒ<ïŒrelation i ="5">]>
ããããWebã€ã³ã¿ãŒãã§ã€ã¹ã¯æ¬¡ã®ããã«è¿°ã¹ãŠããŸãã
æçµåæ
20.04.2017 09:30-20.04.2017 09:51
ããã«ã¡ã¯@Julian0o - Setting.get('import_backends')
ã確èªããŠããã ããŸããïŒ LDAPãšã³ããªãå¿
èŠã§ãã ãã®å Žåã¯ãã³ãã³ãImportJob.all
ãå®è¡ããŠãçµæãæçš¿ããŠãã ããã åºåã«ã¯ãå±æ§payload
ã«PWããããã³ã°ãªã©ã®æ©å¯ããŒã¿ãå«ãŸããŠããããšã«æ³šæããŠãã ããã payload
ã®å
容ã¯é¢ä¿ããªããå®å
šã«åé€ãããå¯èœæ§ããããŸãã
åºåã¯ãã«ããŒã³ã³ãœãŒã«ãã貌ãä»ããã«ã¯å€§ããããŸãã ãã¡ã€ã«ã«åºåãååŸããæ¹æ³ã¯ãããŸããïŒ
ç³ãèš³ãããŸããããå®å šãªã«ããŒããŒãã§ã:)
ImportJob.last.attributes.except('payload').inspect
ãè©ŠããŠãã ãã-ååã®å®è¡ã«ã®ã¿é¢å¿ãããããã§ãã ããã§ããŸã 倧ããå Žåã¯ã File.write('/tmp/zammad_ldap.txt', ImportJob.last.attributes.except('payload').inspect)
ã䜿çšããŠãã¡ã€ã«/tmp/zammad_ldap.txt
ã«æžã蟌ãããšãã§ããŸãã
irb(main):001:0> ImportJob.last.attributes.except('payload').inspect
=> "{\"id\"=>10, \"name\"=>\"Import::Ldap\", \"dry_run\"=>false, \"result\"=>{\"skipped\"=>122, \"created\"=>10, \"updated\"=>27, \"unchanged\"=>22256, \"failed\"=>0, \"sum\"=>22415, \"role_ids\"=>{3=>{\"created\"=>10, \"updated\"=>25, \"unchanged\"=>22220, \"failed\"=>0}, 2=>{\"created\"=>0, \"updated\"=>2, \"unchanged\"=>36, \"failed\"=>0}, 1=>{\"created\"=>0, \"updated\"=>1, \"unchanged\"=>5, \"failed\"=>0}}}, \"started_at\"=>Fri, 21 Apr 2017 08:32:15 UTC +00:00, \"finished_at\"=>Fri, 21 Apr 2017 08:44:07 UTC +00:00, \"created_at\"=>Fri, 21 Apr 2017 08:32:15 UTC +00:00, \"updated_at\"=>Fri, 21 Apr 2017 08:44:07 UTC +00:00}"
ç·šéïŒããã¯å€ãã£ã
Last sync
21.04.2017 10:32 - 21.04.2017 10:44
ããããšãïŒ ããŒããããã¯å¥åŠã§ãð€ãã®ã¹ããŒãã¡ã³ãã®åºåãæäŸããŠããã ããŸããïŒ
ImportJob.where(name: 'Import::Ldap', dry_run: false).order(created_at: :desc).limit(1).first.attributes.except('payload').inspect
ãã®åãã¹ããŒãã¡ã³ãã¯ãããã¹ãã®ã¬ã³ããªã³ã°ãæ åœããLDAPããã³ããšã³ãã³ã³ãããŒã©ãŒã«ãã£ãŠäœ¿çšãããŸãã
ç§ã¯ããªãããããããšç¢ºä¿¡ããŠããŸãããæ£æ°ã®çç±ã ãã§ãïŒããªãã¯ããŒãžããªããŒãããããšããŸãããïŒ
irb(main):001:0> ImportJob.where(name: 'Import::Ldap', dry_run: false).order(created_at: :desc).limit(1).first.attributes.except('payload').inspect
=> "{\"id\"=>12, \"name\"=>\"Import::Ldap\", \"dry_run\"=>false, \"result\"=>{\"skipped\"=>110, \"created\"=>0, \"updated\"=>14, \"unchanged\"=>14176, \"failed\"=>0, \"sum\"=>22415, \"role_ids\"=>{3=>{\"created\"=>0, \"updated\"=>14, \"unchanged\"=>14145, \"failed\"=>0}, 2=>{\"created\"=>0, \"updated\"=>0, \"unchanged\"=>31, \"failed\"=>0}, 1=>{\"created\"=>0, \"updated\"=>0, \"unchanged\"=>5, \"failed\"=>0}}}, \"started_at\"=>Fri, 21 Apr 2017 10:33:07 UTC +00:00, \"finished_at\"=>nil, \"created_at\"=>Fri, 21 Apr 2017 10:33:07 UTC +00:00, \"updated_at\"=>Fri, 21 Apr 2017 10:40:31 UTC +00:00}"
PCãèµ·åããåŸãæã«æ°ã¥ããŸããã ã ããç§ã¯ããŒããªããŒããããŸãã:)
ããã§åæãå®è¡ãããŸãã å€åããã¯1ã€ã®ã¿ã€ããŒã®åé¡ã§ããã
å¥åŠãªð€ãããç§ã«ã¯è¯ãããã§ãã ããããŸãããäœããããŸããããç¥ãããã ããã
ããïŒ
LDAPã³ãã¯ã¿ãè©ŠããŸããããJulian0oïŒ https://github.com/zammad/zammad/issues/350#issuecomment -295259450ïŒãšåãåé¡ãçºçããadmin-groupã宣èšããŸããã§ããã ããã§ã @ martiniã®ãããã§ãrailsã¹ããããã䜿çšããŠç®¡çè ã®åœ¹å²ãåãæ»ããŸããã
LDAPã€ã³ããŒããå®äºããããšã¯ãããŸããããã°ã«ãŒãã¯ãã§ã«åæãããŠããããã§ãã
çŸåšãç§ã®ãŠãŒã¶ãŒã¯ãŸã 顧客ã®åœ¹å²ãæã£ãŠããããã§ãèšå®ãå€æŽããããšã¯ã§ããŸããã
幞ããªããšã«ãç§ã¯ãŸã 管çã¿ã¹ã¯ãå®è¡ã§ããã®ã§ãç¬ç«ãã管çãŠãŒã¶ãŒãäœæããŸããããããã§ãæåã®ãŠãŒã¶ãŒã§ã¯äœãå€æŽã§ããŸããã
ããã«ã€ããŠäœãã¢ã€ãã¢ã¯ãããŸããïŒ
martinis railsã³ãã³ããããäžåºŠå®è¡ããããšã§ãããã解決ããããšãã§ããŸããã ð
ãããããŸã 1ã€è³ªåããããŸããæåã®åæãè¡ãããåã§ããã°ã«ãŒãã®ã¢ã¯ã»ã¹èš±å¯ãåæãããŠã倧äžå€«ã§ããïŒ
ç§ã®å ŽåãåæãããŠLDAP-Connection-WizardãçµäºãããŠãŒã¶ãŒãå€ãããããšã«æ°ã¥ããŸããããäžèšã®ç¶æ³ã«æ°ã¥ããŸããã
LDAPã€ã³ããŒãã¯æšæ¥ãããã³ã°ããŠããŸã
ã€ã³ããŒããåæ¢/åéããããšã¯ã§ããŸããïŒ
ããã«ã¡ã¯@SGVubmluZ0cK - rails管çã³ã³ãœãŒã«ã䜿çšããŠã次ã®3ã€ã®ã³ãã³ãã®ããããã®åºåãæäŸããŠãã ããã
Setting.get('import_backends')
ImportJob.last.attributes.except('payload').inspect
ImportJob.where(name: 'Import::Ldap', dry_run: false).order(created_at: :desc).limit(1).first.attributes.except('payload').inspect
ããããšãïŒ
ããã¯ãrails管çã³ã³ãœãŒã«ãèšãããšã§ãïŒ
irb(main):004:0> Setting.get('import_backends')
=> ["Import::Ldap"]
irb(main):005:0> ImportJob.last.attributes.except('payload').inspect
=> "{\"id\"=>55, \"name\"=>\"Import::Ldap\", \"dry_run\"=>false, \"result\"=>{\"skipped\"=>2, \"created\"=>2, \"updated\"=>0, \"unchanged\"=>496, \"failed\"=>0, \"sum\"=>2403, \"role_ids\"=>{3=>{\"created\"=>2, \"updated\"=>0, \"unchanged\"=>493, \"failed\"=>0}, 2=>{\"created\"=>0, \"updated\"=>0, \"unchanged\"=>3, \"failed\"=>0}, 1=>{\"created\"=>0, \"updated\"=>0, \"unchanged\"=>1, \"failed\"=>0}}}, \"started_at\"=>Wed, 26 Apr 2017 09:57:42 UTC +00:00, \"finished_at\"=>nil, \"created_at\"=>Wed, 26 Apr 2017 09:57:42 UTC +00:00, \"updated_at\"=>Wed, 26 Apr 2017 10:00:11 UTC +00:00}"
irb(main):006:0> ImportJob.where(name: 'Import::Ldap', dry_run: false).order(created_at: :desc).limit(1).first.attributes.except('payload').inspect
=> "{\"id\"=>55, \"name\"=>\"Import::Ldap\", \"dry_run\"=>false, \"result\"=>{\"skipped\"=>2, \"created\"=>2, \"updated\"=>0, \"unchanged\"=>496, \"failed\"=>0, \"sum\"=>2403, \"role_ids\"=>{3=>{\"created\"=>2, \"updated\"=>0, \"unchanged\"=>493, \"failed\"=>0}, 2=>{\"created\"=>0, \"updated\"=>0, \"unchanged\"=>3, \"failed\"=>0}, 1=>{\"created\"=>0, \"updated\"=>0, \"unchanged\"=>1, \"failed\"=>0}}}, \"started_at\"=>Wed, 26 Apr 2017 09:57:42 UTC +00:00, \"finished_at\"=>nil, \"created_at\"=>Wed, 26 Apr 2017 09:57:42 UTC +00:00, \"updated_at\"=>Wed, 26 Apr 2017 10:00:11 UTC +00:00}"
ã©ããããããšãïŒ
ããã«ã¡ã¯@SGVubmluZ0cK-äžèŠããã¹ãŠãç§ã«ã¯ããŸãèŠããŸãã 確ãã«ããã§ã¯ãããŸããã æ°ããåé¡ãäœæããŠããã ããŸãããïŒ ã·ã¹ãã /ã»ããã¢ããã«ã€ããŠãããã«æ·±ãæãäžããããã«ç¥ã£ãŠããå¿
èŠã®ãã質åãããã€ããããŸãã production.log
ãã¡ã€ã«ãžã®ãªã¯ãšã¹ãããããŸãããããæäŸã§ããã°çŽ æŽããããšæããŸãã
ãŸããã³ããŒããŠãã ãã-äžèšã®ã³ãã³ãã®åºåãæ°ããåé¡ã«è²Œãä»ããŠããã¹ãŠãæŽã£ãŠããããã«ããŸãã ããããšãïŒ
ããã«ã¡ã¯@Julian0o -LDAPã°ã«ãŒãããZammadãžã®åœ¹å²ã®ãããã³ã°ãæ¬ èœããŠããããã«Zammadã圹å²ã®å²ãåœãŠãåé€ããåé¡ã¯ãäžèšã®ã³ãããã§ä¿®æ£ãããŠããŸãã ãããã³ã°ãæå®ãããŠããªãå ŽåããŠãŒã¶ãŒã¯ããŒã«ã«ã®åœ¹å²ã®å²ãåœãŠãä¿æããããã«ãªããŸããã ãã ãããããã³ã°ãæå®ãããŠããå ŽåãLDAPã圹å²å²ãåœãŠã®äž»èŠãªãœãŒã¹ã«ãªããŸãã ãã£ãŒãããã¯ãããã ããã°å¹žãã§ãð€
ããã«ã¡ã¯ãã¿ããªã ADFSãä»ããèªèšŒããŸãã¯å°æ¥ã®ãªãªãŒã¹ã®ã«ãŒãã§ã®èªèšŒã¯å¯èœã§ããïŒ ð
ããã«ã¡ã¯@kmclea16ïŒ
ã¯ããZammadã¯åªããomniauthgemã䜿çšããŠããµãŒãããŒãã£ãããã€ããŒãä»ããŠãŠãŒã¶ãŒãèªèšŒããã³åæããããã ADFSãå¯èœã§ãã omnââiauthã«ADFSãæäŸããgemã¯ãã§ã«ååšããŸãã
ãã ããè¿ãå°æ¥ãããå®è£ ããäºå®ã¯ãããŸããããããã»ã©é£ããã¯ãªãã¯ãã§ãã 誰ãç¥ã£ãŠãããå€å誰ãããã«ãªã¯ãšã¹ããæäŸããããšãã§ããŸããïŒ ãã®ããã®æ°ããåé¡ãäœæã§ããã°çŽ æŽããããšæããŸãã
LDAPèªèšŒã¯ã次ã®ZammadããŒãžã§ã³1.6ãªãªãŒã¹ã®æºåãã§ããŠããŸãðãã®æ©èœã«åé¡ãããå Žåã¯ãæ°ããåé¡ãéããŠãã ããã
@kmclea16 -ADFSã®åé¡ããã«ãªã¯ãšã¹ãã確èªããã®ã¯çŽ æŽãããããšã§ãð
æãåèã«ãªãã³ã¡ã³ã
ããã«é¢ãããã¥ãŒã¹ã¯ãããŸããïŒ