[SOLVED] Mencegah (Ransomware WannaCry) Lebih Baik Daripada Mengobati

Ransomware WannaCry berhasil membuat hampir seluruh penduduk dunia panik dan galau, setelah kasus Conficker beberapa saat yang lalu juga melanda. Mudahnya akses media sosial membuat masalah ini cepat menyebar dan viral hingga hampir ke setiap kalangan mengenal (sekilas) varian virus yang satu ini.

Yang melekat di pikiran tentang virus ini adalah tebusan untuk mengembalikan data ke bentuk semula yang fantastis, pelaku meminta tebusan sejumlah $300 BTC (Bitcoin), berapa banyak itu? Bisa kalian cek langsung di website Bitcoin, gara-gara viralnya kasus ini sekarang nilai tukar Bitcoin melonjak drastis. Bayangkan saja, sekarang 1 BTC = $1745 US (kurang lebih).

Itu sekilas tentang Ransomware WannaCry dan Bitcoin, lalu bagaimana caranya mencegah atau mengantisipasi agar Laptop / PC Windows kita tidak sampai terserang Ransomware WannaCry ini? Poin paling penting adalah mencegah penyebaran virus itu sendiri, yang mana virus jenis Worm seperti ini menyebar melalui file sharing yang ada di Windows. Berikut beberapa pertolongan pertama yang bisa kalian lakukan agar terhindar dari virus ini : Continue reading

Advertisements

Menampilkan Gambar di Theme dan Custom Portlet Liferay

Bagi yang sudah terbiasa membangun website PHP, Java atau sekedar HTML postingan ini pasti terasa sepele dan kurang berbobot, namun pendapat itu akan berbalik 180o ketika yang membaca ini sedang riset dan belajar lebih banyak tentang Liferay Portal.

Membangun sebuah website menggunakan Liferay menurut saya termasuk cukup sulit, memahami konsep dari semua bagiannya dan menyusun bagian-bagian tersebut sehingga dapat terbentuk sebuah website yang sesuai keinginan, ada namanya Portlet, Hook, Service Builder, Theme / Template dan sebagainya. Lebih membuat kesulitan lagi referensi yang tersedia belum begitu banyak. Continue reading

Tombol Disconnect VPN di Windows 10 Tidak Ada

Adanya VPN sangat membantu dalam pekerjaan terutama bagi App/System Developer seperti saya, bermain dengan VPN bisa dibilang sering namun biasanya menggunakan Third-Party untuk terhubung ke suatu VPN. Barusan, kebetulan ada perlu untuk terhubung ke suatu VPN tanpa Third-Party seperti biasanya, jadi saya pakai fitur VPN di Windows 10 untuk pertama kalinya.

Untuk setting VPN di Windows 10 sangat mudah :

  1. Tekan tombol Start / Windows Key di Keyboard.
  2. Ketik VPN, maka akan muncul pilihan menu “Change virtual private network (VPN)” kemudian pilih menu tersebut.
  3. Jendela pengaturan VPN akan terbuka, disana kalian tinggal tambahkan atau edit pengaturan VPN sesuai kebutuhan.
  4. Yang perlu diisi antara lain, Penamaan Koneksi, IP Address VPN Server, Username dan Password.
  5. Selesai.

Saya berhasil menambahkan satu koneksi VPN dan terhubung ke jaringan tersebut, dan setelah pekerjaan sudah selesai maka saya perlu untuk Disconnect VPN tersebut. Saya mencoba untuk menemukan Tombol Disconnect VPN tidak ada, baik di popup connection yang ada di Taskbar Windows ataupun di menu Pengaturan VPN. Entah ini luput atau memang orang Microsoft lupa :p Continue reading

Java – Get Current URL in Liferay

Di Liferay ada beberapa macam URL yang bisa dimanfaatkan untuk keperluan membuat Custom Portlet atau modifikasi lainnya. Berikut adalah contoh source code untuk mengambil / mendapatkan beberapa jenis URL di Liferay :

HttpServletRequest servletRequest = PortalUtil.getHttpServletRequest(request);
String currentCompleteUrl = PortalUtil.getCurrentCompleteURL(servletRequest);

try {
	String renderCurrentURL 			= PortalUtil.getCurrentURL(request);
	String servletRequestCurrentURL 	= PortalUtil.getCurrentURL(servletRequest);
	String canonicalURL					= PortalUtil.getCanonicalURL(currentCompleteUrl, themeDisplay, themeDisplay.getLayout());
	String homeURL						= PortalUtil.getHomeURL(servletRequest);
	String currentPageURL				= PortalUtil.getPortalURL(themeDisplay)+themeDisplay.getLayout().getFriendlyURL();
	String portalUrl 					= PortalUtil.getPortalURL(request);
	String servletRequestPortalUrl 		= PortalUtil.getPortalURL(servletRequest);
	String themedisplayPortalUrl  		= PortalUtil.getPortalURL(themeDisplay);
	String themedisplaylayoutPortalUrl 	= PortalUtil.getPortalURL(themeDisplay.getLayout(), themeDisplay);
	String portalWebDir 				= PortalUtil.getPortalWebDir();
	String portalLibDir 				= PortalUtil.getPortalLibDir();
	
	System.out.println("currentCompleteUrl: "+currentCompleteUrl);
	System.out.println("renderCurrentURL: "+renderCurrentURL);
	System.out.println("servletRequestCurrentURL: "+servletRequestCurrentURL);
	System.out.println("canonicalURL: "+canonicalURL);
	System.out.println("homeURL: "+homeURL);
	System.out.println("currentPageURL: "+currentPageURL);
	System.out.println("portalUrl: "+portalUrl);
	System.out.println("servletRequestPortalUrl: "+servletRequestPortalUrl);
	System.out.println("themedisplayPortalUrl: "+themedisplayPortalUrl);
	System.out.println("themedisplaylayoutPortalUrl: "+themedisplaylayoutPortalUrl);
	System.out.println("portalWebDir: "+portalWebDir);
	System.out.println("portalLibDir: "+portalLibDir);
} catch (Exception e) {
	e.printStackTrace();
}

Source code java tersebut diatas silahkan dimasukkan ke dalam Package di environment development Liferay kalian. Dan jangan lupa mengganti atau menghapus System.out.println(); jika ingin deploy ke Liferay Portal kalian. Script tersebut hanya digunakan jika kalian perlu menampilkan langsung di console sebelum deploy ke server.
Berikut contoh hasil dari source diatas :

/**
currentCompleteUrl: http://localhost:8080/organization?selectedCard=Organization&cardViewState=Listview
renderCurrentURL: /organization?selectedCard=Organization&cardViewState=Listview
servletRequestCurrentURL: /organization?selectedCard=Organization&cardViewState=Listview
canonicalURL: http://localhost:8080/organization?selectedCard=Organization&cardViewState=Listview
homeURL: http://localhost:8080/web/guest
currentPageURL: http://localhost:8080/organization
portalUrl: http://localhost:8080
servletRequestPortalUrl: http://localhost:8080
themedisplayPortalUrl: http://localhost:8080
themedisplaylayoutPortalUrl: http://localhost:8080
portalWebDir: /opt/liferay/tomcat-7.0.42/webapps/ROOT/
portalLibDir: /opt/liferay/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/
**/

Semoga bermanfaat 🙂

Check If User Already Login in Liferay

Ada beberapa metode / cara untuk mengecek apakah user dalam posisi login (signed in) atau belum di Liferay Portal. Bisa melalui JSP, VM File (Template / Theme), Java, Web Content Template dan Javascript, berikut detail dari masing-masing metode diatas untuk melakukan pengecekan apakah user Liferay Portal sudah login atau belum.

VM File (Template / Theme Code)

 
#if (!$is_signed_in) 
SUDAH LOGIN 
#else 
BELUM LOGIN 
#end

JSP File (Portlet)

 
<!-- Import Object From Theme --> 
<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %> 
<liferay-theme:defineObjects /> 

<!-- Sample --> 
<% 
String kgScreenName = ""; 
if (themeDisplay.isSignedIn()) { 
kgScreenName = UserLocalServiceUtil.getUser(PortalUtil.getUserId(request)).getScreenName(); 
} 
%>

<div><%=kgScreenName%></div>

Java

 
ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY); 
boolean signedIn = themeDisplay.isSignedIn();

kemudian kalian bisa manfaatkan variabel signedIn diatas untuk keperluan file jsp di portlet yang kalian punya dengan cara berikut :

<% String signedIn = (String) request.getAttribute("signedIn"); %>

Web Content Template

 
#set ($isSignedIn = $request.get("remote-user"))
#if ($isSignedIn!='') 
#else 
#end 

Javascript

 
$(document).ready(function(){ 
if((Liferay.ThemeDisplay.isSignedIn())){ 
alert('Sudah Login'); 
} 
});

Semoga bermanfaat 🙂