{"id":5151,"date":"2015-06-12T15:30:56","date_gmt":"2015-06-12T13:30:56","guid":{"rendered":"http:\/\/www.karadere.com\/blog\/?p=5151"},"modified":"2015-06-12T15:30:56","modified_gmt":"2015-06-12T13:30:56","slug":"sap-abap-custom-sso-token-login-fonction","status":"publish","type":"post","link":"https:\/\/www.karadere.com\/blog\/sap-abap-custom-sso-token-login-fonction.html","title":{"rendered":"SAP Abap Custom SSO token login fonction"},"content":{"rendered":"<p><a href=\"http:\/\/www.karadere.com\/blog\/uploads\/\/2010\/02\/sap-abap-logo.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-full wp-image-309\" src=\"http:\/\/www.karadere.com\/blog\/uploads\/\/2010\/02\/sap-abap-logo.png\" alt=\"SAP Fiori\" width=\"230\" height=\"121\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><!--StartFragment --><span class=\"L0S52\">FUNCTION\u00a0<\/span>UNAME_LOGIN_SSO_TOKEN<span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S31\">*&#8221;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<\/span><br \/>\n<span class=\"L0S31\">*&#8221;*&#8221;Local\u00a0Interface:<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0IMPORTING<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0VALUE(UNAME)\u00a0TYPE\u00a0\u00a0SY-UNAME<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0VALUE(TOKENSIFRE)\u00a0TYPE\u00a0\u00a0STRING<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0REFERENCE(TARIHDAMGASI)\u00a0TYPE\u00a0\u00a0FLAG\u00a0OPTIONAL<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0REFERENCE(SAATDAMGASI)\u00a0TYPE\u00a0\u00a0FLAG\u00a0OPTIONAL<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0EXPORTING<\/span><br \/>\n<span class=\"L0S31\">*&#8221;\u00a0\u00a0\u00a0\u00a0\u00a0REFERENCE(TOKEN)\u00a0TYPE\u00a0\u00a0MD5_FIELDS-HASH<\/span><br \/>\n<span class=\"L0S31\">*&#8221;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<\/span><\/p>\n<p><span class=\"L0S31\">&#8221;\u00a0&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0Single\u00a0Sign\u00a0On\u00a0&#8211;\u00a0Token\u00a0Login<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0creater\u00a0\u00a0:\u00a0Burhan\u00a0KARADERE<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0Date\u00a0\u00a0\u00a0\u00a0\u00a0:\u00a012.06.2015<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0Versiyon\u00a0:\u00a0v1<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0Kullan\u0131m\u0131<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0Token\u00a0form\u00fcl\u00fc\u00a0algoritmasi<\/span><br \/>\n<span class=\"L0S31\">&#8221; kullaniciadi\u00a0+\u00a0gunun\u00a0tarihi\u00a0+\u00a0gununsaati\u00a0+\u00a0token\u015fifresi\u00a0<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<\/span><\/p>\n<p><span class=\"L0S52\">data\u00a0<\/span><span class=\"L0S55\">:\u00a0<\/span>token_str\u00a0<span class=\"L0S52\">type\u00a0<\/span>string\u00a0<span class=\"L0S55\">.\u00a0<\/span><span class=\"L0S31\">&#8221;\u00a0token\u00a0formul\u00a0\u00a0algoritmasi<\/span><br \/>\n<span class=\"L0S52\">data\u00a0<\/span><span class=\"L0S55\">:\u00a0<\/span>token_tarih<span class=\"L0S55\">(<\/span><span class=\"L0S32\">10<\/span><span class=\"L0S55\">)\u00a0<\/span><span class=\"L0S52\">type\u00a0<\/span><span class=\"L0S52\">c\u00a0<\/span><span class=\"L0S55\">.\u00a0<\/span><span class=\"L0S31\">&#8221;\u00a012.06.2015<\/span><br \/>\n<span class=\"L0S52\">data\u00a0<\/span><span class=\"L0S55\">:\u00a0<\/span>token_saat<span class=\"L0S55\">(<\/span><span class=\"L0S32\">6<\/span><span class=\"L0S55\">)\u00a0<\/span><span class=\"L0S52\">type\u00a0<\/span><span class=\"L0S52\">c\u00a0<\/span><span class=\"L0S55\">.\u00a0<\/span><span class=\"L0S31\">&#8221;\u00a015:30<\/span><br \/>\n<span class=\"L0S52\">data\u00a0<\/span><span class=\"L0S55\">:\u00a0<\/span>token_lengt\u00a0<span class=\"L0S52\">type\u00a0<\/span><span class=\"L0S52\">i\u00a0<\/span><span class=\"L0S55\">.\u00a0<\/span><span class=\"L0S31\">&#8221;\u00a0token\u00a0string\u00a0uzunlugu<\/span><\/p>\n<p><span class=\"L0S52\">if\u00a0<\/span>tarihdamgasi\u00a0<span class=\"L0S52\">eq\u00a0<\/span><span class=\"L0S33\">&#8216;X&#8217;<\/span><span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0tarih\u00a012.06.2015<\/span><br \/>\n<span class=\"L0S52\">concatenate\u00a0\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>datum+6<span class=\"L0S55\">(<\/span><span class=\"L0S32\">2<\/span><span class=\"L0S55\">)\u00a0\u00a0<\/span><span class=\"L0S33\">&#8216;.&#8217;\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>datum+4<span class=\"L0S55\">(<\/span><span class=\"L0S32\">2<\/span><span class=\"L0S55\">)\u00a0\u00a0<\/span><span class=\"L0S33\">&#8216;.&#8217;\u00a0\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>datum<span class=\"L0S55\">(<\/span><span class=\"L0S32\">4<\/span><span class=\"L0S55\">)\u00a0<\/span><span class=\"L0S52\">into\u00a0<\/span>token_tarih\u00a0<span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">ELSE<\/span><span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">CLEAR\u00a0<\/span>token_tarih<span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">ENDIF<\/span><span class=\"L0S55\">.<\/span><\/p>\n<p><span class=\"L0S52\">if\u00a0<\/span>saatdamgasi\u00a0<span class=\"L0S52\">eq\u00a0<\/span><span class=\"L0S33\">&#8216;X&#8217;<\/span><span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S31\">&#8221;\u00a0saat\u00a015:30\u00a0bi\u00e7eminde<\/span><br \/>\n<span class=\"L0S52\">concatenate\u00a0\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>uzeit<span class=\"L0S55\">(<\/span><span class=\"L0S32\">2<\/span><span class=\"L0S55\">)\u00a0\u00a0<\/span><span class=\"L0S33\">&#8216;:&#8217;\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>uzeit+2<span class=\"L0S55\">(<\/span><span class=\"L0S32\">2<\/span><span class=\"L0S55\">)\u00a0\u00a0\u00a0<\/span><span class=\"L0S52\">into\u00a0<\/span>token_saat\u00a0<span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">ELSE<\/span><span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">CLEAR\u00a0<\/span>token_saat<span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">ENDIF<\/span><span class=\"L0S55\">.<\/span><\/p>\n<p><span class=\"L0S52\">CONCATENATE\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>uname token_tarih\u00a0token_saat \u00a0tokensifre\u00a0<span class=\"L0S52\">into\u00a0\u00a0<\/span>token_str\u00a0\u00a0<span class=\"L0S55\">.<\/span><\/p>\n<p><span class=\"L0S52\">CONDENSE\u00a0<\/span>token_str\u00a0<span class=\"L0S52\">NO<\/span><span class=\"L0S70\">&#8211;<\/span>GAPS\u00a0<span class=\"L0S55\">.<\/span><\/p>\n<p>token_lengt\u00a0<span class=\"L0S55\">=\u00a0\u00a0<\/span><span class=\"L0S52\">STRLEN<\/span><span class=\"L0S55\">(\u00a0<\/span>token_str\u00a0<span class=\"L0S55\">)<\/span><span class=\"L0S55\">.\u00a0<\/span><span class=\"L0S31\">&#8221;\u00a0uzunluk<\/span><\/p>\n<p><span class=\"L0S52\">CALL\u00a0<\/span><span class=\"L0S52\">FUNCTION\u00a0<\/span><span class=\"L0S33\">&#8216;MD5_CALCULATE_HASH_FOR_CHAR&#8217;<\/span><br \/>\n<span class=\"L0S52\">EXPORTING<\/span><br \/>\n<span class=\"L0S52\">DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span><span class=\"L0S55\">=\u00a0<\/span>token_str<br \/>\nLENGTH\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"L0S55\">=\u00a0<\/span>token_lengt<br \/>\nVERSION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"L0S55\">=\u00a0<\/span><span class=\"L0S32\">1<\/span><br \/>\n<span class=\"L0S52\">IMPORTING<\/span><br \/>\nHASH\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"L0S55\">=\u00a0<\/span>token<br \/>\n<span class=\"L0S31\">*\u00a0TABLES<\/span><br \/>\n<span class=\"L0S31\">*\u00a0\u00a0\u00a0DATA_TAB\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0=<\/span><br \/>\n<span class=\"L0S52\">EXCEPTIONS<\/span><br \/>\nNO_DATA\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"L0S55\">=\u00a0<\/span><span class=\"L0S32\">1<\/span><br \/>\nINTERNAL_ERROR\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"L0S55\">=\u00a0<\/span><span class=\"L0S32\">2<\/span><br \/>\n<span class=\"L0S52\">OTHERS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span><span class=\"L0S55\">=\u00a0<\/span><span class=\"L0S32\">3<\/span><br \/>\n<span class=\"L0S55\">.<\/span><br \/>\n<span class=\"L0S52\">IF\u00a0<\/span>sy<span class=\"L0S70\">&#8211;<\/span>subrc\u00a0&lt;&gt;\u00a0<span class=\"L0S32\">0<\/span><span class=\"L0S55\">.<\/span><\/p>\n<p>token\u00a0<span class=\"L0S55\">=\u00a0\u00a0<\/span><span class=\"L0S33\">&#8216;Token\u00a0hesaplanamad\u0131&#8217;\u00a0<\/span><span class=\"L0S55\">.<\/span><\/p>\n<p><span class=\"L0S52\">ENDIF<\/span><span class=\"L0S55\">.<\/span><\/p>\n<p><span class=\"L0S52\">ENDFUNCTION<\/span><span class=\"L0S55\">.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>SAP Abap Custom SSO token login fonction<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[88,97,6,45,46,61],"tags":[745,966,1400,1837,2079],"class_list":["post-5151","post","type-post","status-publish","format-standard","hentry","category-abap-sap","category-basis","category-bilisim-it-haber","category-sap","category-sap-guvenlik-sap-security","category-ui5-html5","tag-custom","tag-fonction","tag-login","tag-sap","tag-token","has-post-title","has-post-date","has-post-category","has-post-tag","has-post-comment","has-post-author",""],"aioseo_notices":[],"views":1494,"_links":{"self":[{"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/posts\/5151","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/comments?post=5151"}],"version-history":[{"count":0,"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/posts\/5151\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/media?parent=5151"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/categories?post=5151"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.karadere.com\/blog\/wp-json\/wp\/v2\/tags?post=5151"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}